PHP로 작업할 때 포함 경로는 외부 파일을 코드에 통합하는 데 중요한 역할을 합니다. 그러나 포함된 파일의 상대적 위치를 결정하는 것은 혼란스러울 수 있습니다.
이 시나리오를 고려하십시오. B.php를 포함하고 C.php를 포함하는 PHP 스크립트 A.php가 있습니다. 질문이 생깁니다: C.php에 대한 상대 경로는 B.php 또는 A.php의 위치를 기반으로 해야 합니까?
답변:
일부 프로그래밍 언어와는 달리 , PHP의 포함 경로는 항상 주 스크립트에 상대적이며, 이 경우 A.php입니다. 이는 include() 함수가 기본적으로 포함된 파일의 코드를 현재 스크립트에 포함시키기 때문입니다.
이유:
include()의 메커니즘은 병합하는 것입니다. 다른 파일의 내용을 현재 스크립트에 추가합니다. 따라서 도중에 어떤 다른 파일을 포함할지 관계없이 기본 스크립트의 컨텍스트 내에서만 작동합니다.
영향:
즉, 파일이 include()가 호출되는 경우 경로 확인에 아무런 영향을 미치지 않습니다. 현재 작업 디렉토리도 관련이 없습니다. 경로는 기본 스크립트의 위치에 의해서만 결정됩니다.
예외:
포함되는 파일에 대한 상대 경로를 특별히 만들고 싶다면 다음을 활용할 수 있습니다. __FILE__ 상수. 이 상수는 항상 현재 파일의 리터럴 위치를 가리키므로 포함된 파일의 경로를 동적으로 계산할 수 있습니다.
예:
C.php를 포함하려면 B.php와 관련하여 다음을 사용할 수 있습니다.
include(dirname(__FILE__)."/C.PHP");
위 내용은 PHP는 중첩된 파일 포함의 상대 포함 경로를 어떻게 해결합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!