<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 기사의 내용과 관련이 없습니다PHP코드 예제</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"이것은 관련이없는 부분입니다PHP암호,기사 분리를 보여주는 데 사용됩니다。"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
PHP파일 작업에서,종종 파일이있는 디렉토리로의 절대 경로를 가져와야합니다.,후속 읽기 또는 쓰기 작업의 경우。`</span><span><span class="hljs-title function_ invoke__">realpath</span></span><span>()`그리고`</span><span><span class="hljs-title function_ invoke__">dirname</span></span><span>()`그들은 이런 종류의 시나리오에서 매우 실용적인 기능입니다.,그들은 각각 자신의 용도를 가지고 있습니다,但搭配使用可以更加精确그리고安全地获取文件路径。
</span><span><span class="hljs-comment">### 1. `dirname()`기능</span></span><span>
`</span><span><span class="hljs-title function_ invoke__">dirname</span></span><span>()`부모 디렉토리는 파일 경로를 얻는 데 사용됩니다。기본 사용량은 다음과 같습니다:
```php
</span><span><span class="hljs-variable">$filePath</span></span><span> = </span><span><span class="hljs-string">"/var/www/html/index.php"</span></span><span>;
</span><span><span class="hljs-variable">$dirPath</span></span><span> = </span><span><span class="hljs-title function_ invoke__">dirname</span></span><span>(</span><span><span class="hljs-variable">$filePath</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$dirPath</span></span><span>; </span><span><span class="hljs-comment">// 산출: /var/www/html</span></span><span>
</span></span>경로에 다단계 디렉토리가 포함 된 경우 두 번째 매개 변수를 통해 반환 된 계층을 지정할 수 있습니다.
<span><span><span class="hljs-variable">$dirPath</span></span><span> = </span><span><span class="hljs-title function_ invoke__">dirname</span></span><span>(</span><span><span class="hljs-variable">$filePath</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$dirPath</span></span><span>; </span><span><span class="hljs-comment">// 산출: /var/www</span></span><span>
</span></span>Dirname () 는 원래 경로에서 상대 경로 또는 구문 분석 된 상위 디렉토리를 반환하여 경로가 실제로 존재하는지 확인하지 않습니다.
RealPath ()는 경로를 절대 경로로 구문 분석하고 상징적 링크를 구문 분석하는 데 사용됩니다 . 그리고 .. , 경로가 실제로 존재하는지 확인하면서. 예는 다음과 같습니다.
<span><span><span class="hljs-variable">$path</span></span><span> = </span><span><span class="hljs-string">"./test/../index.php"</span></span><span>;
</span><span><span class="hljs-variable">$absolutePath</span></span><span> = </span><span><span class="hljs-title function_ invoke__">realpath</span></span><span>(</span><span><span class="hljs-variable">$path</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$absolutePath</span></span><span>; </span><span><span class="hljs-comment">// 산출绝对路径,예를 들어: /var/www/html/index.php</span></span><span>
</span></span>경로가 존재하지 않으면 RealPath ()는 false를 반환합니다.
획득 된 디렉토리 경로가 정확하고 절대적인지 확인하려면 다음을 결합 할 수 있습니다.
<span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-string">"./test/../index.php"</span></span><span>;
</span><span><span class="hljs-variable">$absoluteDir</span></span><span> = </span><span><span class="hljs-title function_ invoke__">dirname</span></span><span>(</span><span><span class="hljs-title function_ invoke__">realpath</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>));
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$absoluteDir</span></span><span>; </span><span><span class="hljs-comment">// 산출: /var/www/html</span></span><span>
</span></span>여기의 과정은 다음과 같습니다.
RealPath ($ 파일) 파일 경로를 실제 절대 경로로 변환합니다.
Dirname () 은 절대 경로에서 상위 디렉토리를 가져옵니다.
이 방법은 귀하가 얻는 디렉토리 경로가 존재하며 상대 경로로 인해 발생할 수있는 오류를 피하기 위해 절대 경로임을 확인할 수 있습니다.
파일을 동적으로로드하거나 파일을 포함 할 때는 경로가 올바른지 확인해야합니다.
로그를 저장하고 파일을 스크립트 파일과 동일한 디렉토리로 캐시합니다.
플랫폼에 배치 할 때 경로 혼동을 피하십시오.
Dirname () : 부모 디렉토리를 가져오고 계층을 지정할 수 있습니다.
RealPath () : 실제로 존재하는 절대 경로로의 경로를 구문 분석합니다.
결합 된 사용 : 먼저 realpath ()를 사용하여 경로가 실제로 존재하는지 확인한 다음 Dirname ()을 사용하여 디렉토리가있는 곳에 도착하십시오.
이 사용 조합은 PHP 프로젝트에서 파일 경로를 처리하기위한 모범 사례 중 하나입니다.
<span><span><span class="hljs-comment">// 尾部示例암호</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"기사 예제의 끝"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>