realpath 함수

(PHP 4, PHP 5, PHP 7, PHP 8)

realpath — 정규화된 절대 경로 이름을 반환합니다.


설명

realpath(string $path): string|false

realpath()는 모든 심볼릭 링크를 확장하고 입력 path의 /./, /../ 및 추가 / 문자에 대한 참조를 확인하고 정규화된 절대 경로 이름을 반환합니다.


매개변수

path
확인 중인 경로입니다.

메모: 경로를 제공해야 하지만 값은 빈 문자열일 수 있습니다. 이 경우 값은 현재 디렉토리로 해석됩니다.


반환 값

성공 시 정규화된 절대 경로 이름을 반환합니다. 결과 경로에는 기호 링크, /./ 또는 /../ 구성 요소가 없습니다. \ 및 /와 같은 후행 구분 기호도 제거됩니다.

realpath()는 실패 시 false를 반환합니다. 파일이 존재하지 않는 경우.

메모: 실행 중인 스크립트에는 계층의 모든 디렉토리에 대한 실행 권한이 있어야 합니다. 그렇지 않으면 realpath()false를 반환합니다.

메모: 대소문자를 구분하지 않는 파일 시스템의 경우 realpath()는 대소문자를 정규화하거나 정규화하지 않을 수 있습니다.

메모: realpath() 함수는 Phar 내부에 있는 파일에 대해 작동하지 않습니다. 이러한 경로는 실제 경로가 아닌 가상 경로이기 때문입니다.

메모: Windows에서 디렉토리에 대한 접합 및 기호 링크는 한 수준으로만 확장됩니다.

메모: PHP의 정수 유형은 부호가 있고 많은 플랫폼이 32비트 정수를 사용하기 때문에 일부 파일 시스템 함수는 2GB보다 큰 파일에 대해 예기치 않은 결과를 반환할 수 있습니다.


Examples

예제 #1 realpath() 예제

                  
<?php
chdir('/var/www/');
echo realpath('./../../etc/passwd') . PHP_EOL;

echo realpath('/tmp/') . PHP_EOL;
?>
                  
                

위의 예는 다음을 출력합니다.

/etc/passwd
/tmp
                

예제 #2 Windows의 realpath()

Windows에서 realpath()는 유닉스 스타일 경로를 Windows 스타일로 변경합니다.

                  
<?php
echo realpath('/windows/system32'), PHP_EOL;

echo realpath('C:\Program Files\\'), PHP_EOL;
?>
                  
                

위의 예는 다음을 출력합니다.

C:\WINDOWS\System32
C:\Program Files
                

기타

  • basename() - 경로의 후행 이름 구성 요소를 반환합니다.
  • dirname() - 상위 디렉토리의 경로를 반환
  • pathinfo() - 파일 경로에 대한 정보를 반환합니다.