update : 2015.11.03
php.shukuma.com

검색:
 
 
Returns canonicalized absolute pathname

realpath

(PHP 4, PHP 5, PHP 7)

realpathReturns canonicalized absolute pathname

설명

string realpath ( string $path )

realpath() expands all symbolic links and resolves references to '/./', '/../' and extra '/' characters in the input path and returns the canonicalized absolute pathname.

인수

path

The path being checked.

Note:

Whilst a path must be supplied, the value can be blank or NULL In these cases, the value is interpreted as the current directory.

반환값

Returns the canonicalized absolute pathname on success. The resulting path will have no symbolic link, '/./' or '/../' components. Trailing delimiters, such as \ and /, are also removed.

realpath() returns FALSE on failure, e.g. if the file does not exist.

Note:

The running script must have executable permissions on all directories in the hierarchy, otherwise realpath() will return FALSE.

Note:

For case-insensitive filesystems realpath() may or may not normalize the character case.

Note: PHP의 정수형은 부호 있는 형식이고 많은 플랫폼이 32비트 정수를 사용하기에, 몇몇 파일시스템 함수는 2GB가 넘는 파일에 대해서 예측할 수 없는 결과를 반환합니다.

변경점

버전 설명
5.3.0 Prior to this release, if only the last path component did not exist, realpath() would not fail on *BSD systems. realpath() now fails in this case.
5.2.1 Prior to this version, realpath() returned FALSE if path is an empty string or NULL.

예제

Example #1 realpath() example

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

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

위 예제의 출력:

/etc/passwd
/tmp

Example #2 realpath() on Windows

On windows realpath() will change unix style paths to windows style.

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

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

위 예제의 출력:

C:\WINDOWS\System32
C:\Program Files

참고

  • basename() - Returns trailing name component of path
  • dirname() - Returns a parent directory's path
  • pathinfo() - Returns information about a file path