파일 위치를 설명하기 위해 절대 경로와 상대 경로를 사용할 수 있습니다. 절대 경로는 루트부터 시작하여 각 하위 디렉토리를 레벨별로 입력한 후 최종적으로 파일명이나 디렉토리명을 지정하는 것입니다. 상대 디렉터리는 현재 디렉터리에서 디렉터리를 입력하고 마지막으로 파일 이름이나 디렉터리 이름을 지정하는 것입니다. 시스템의 각 디렉토리 아래에는 각각 현재 디렉토리와 상위 디렉토리(상위 디렉토리)를 나타내는 두 개의 특수 디렉토리 "."가 있습니다. 예:
$unixPath = “/var/www/html/index.php” – UNIX 시스템의 절대 경로, 경로 구분 기호로 “/”를 사용해야 합니다.
$winPath = “C:\Appserv\www\index.php” – 기본적으로 “”를 경로 구분자로 사용하는 Windows 시스템의 절대 경로
$winPath = “C:/Appserv/www/index.php” – Windows 시스템에서는 “/”도 경로 구분자로 허용됩니다.
을 사용하는 것이 좋습니다.
$fileName1="file.txt"; – 상대 경로, 현재 디렉터리의 file.txt 파일
$fileName2="javascript/common.js"; – 현재 디렉터리의 javascript 하위 디렉터리에 있는 common.js 파일의 상대 경로
$fileName3=”../images/logo.gif”; – 상대 경로, 상위 디렉터리의 이미지 하위 디렉터리에 있는 logo.gif 파일
위의 예에는 UNIX 및 Windows 시스템의 절대 경로와 상대 경로의 형식이 각각 나열되어 있습니다. 그 중 유닉스 시스템에서는 슬래시("/")를 경로 구분자로 사용해야 하고, 윈도우 시스템에서는 기본적으로 백슬래시("")를 경로 구분자로 사용해야 한다는 뜻이다. 이스케이프되었지만 슬래시 "/"도 구분 기호로 사용됩니다. 프로그램의 이식성을 좋게 하기 위해서는 파일의 경로 구분 기호로 "/"를 사용하는 것이 좋습니다. 또한 PHP의 내장 상수 DIRECTORY_SEPARATOR를 사용할 수도 있습니다. 이 상수의 값은 현재 운영 체제의 기본 파일 경로 구분 기호입니다. 예:
$fileName2 = "javascript".DIRECTORY_SEPARATOR."common.js"; – Unix의 경우 "/", Windows의 경우 ""
끝의 확장자, 디렉토리 부분, 기본 이름 등 디렉토리 경로의 개별 속성을 구분하는 것이 유용한 경우가 많습니다. 이러한 작업은 PHP의 시스템 함수 basename(), dirname() 및 pathinfo()를 통해 수행할 수 있습니다.
①함수 기본 이름()
basename() 함수는 경로 중 파일 이름 부분을 반환합니다. 이 함수의 프로토타입은 다음과 같습니다.
string basename(string path[,string suffix]) //경로의 파일 이름 부분을 반환합니다
이 함수는 파일의 전체 경로를 포함하는 문자열을 제공합니다. 이 함수는 기본 파일 이름을 반환합니다. 두 번째 매개변수는 선택사항이며 파일 확장자를 지정합니다. 이 확장자는 제공된 경우 출력되지 않습니다. 이 함수의 사용법은 다음 코드에 나와 있습니다.
//파일의 전체 경로를 포함하는 문자열
$path = "/var/www/html/page.php";
//파일 확장자와 함께 파일 이름을 표시하고 page.php를 출력합니다
echo 기본 이름($path);
//파일 확장자 없이 파일 이름을 표시하고 출력 페이지
echo 기본 이름($path,".php");
?>
②함수 디렉토리 이름()
이 함수는 basename()과 정반대입니다. 파일의 전체 경로를 포함하는 문자열을 제공하는 하나의 매개변수만 필요합니다. 이 함수는 파일 이름을 제거한 후 디렉터리 이름을 반환합니다. 이 함수의 사용법은 다음 코드에 나와 있습니다.
$path = "/var/www/html/page.php";
echo dirname($path); //디렉토리 이름/var/www/html
을 반환합니다.
echo dirname('c:/'); //디렉터리 이름을 반환합니다. c:/
?>
③함수 경로정보()
pathinfo() 함수는 지정된 경로의 디렉터리 이름, 기본 이름 및 확장자의 세 부분을 포함하는 연관 배열을 반환합니다. 각각 배열 키 dirname, basename 및 확장을 통해 참조됩니다. 이 함수의 사용법은 다음 코드에 나와 있습니다.
$경로 = "/var/www/html/page.php"
$path_parts = pathinfo($path); //지정된 경로의 디렉터리 이름, 기본 이름 및 확장자를 포함하는 연관 배열을 반환합니다
echo $path_parts["dirname"]; //디렉터리 이름 출력/var/www/html
echo $path_parts["basename"]; //기본 이름 출력 page.php
echo $path_parts["extension"]; //extension.php 출력
?>