> 백엔드 개발 > PHP 튜토리얼 > 중첩된 PHP 포함에서 상대 포함 경로는 어떻게 작동합니까?

중첩된 PHP 포함에서 상대 포함 경로는 어떻게 작동합니까?

Barbara Streisand
풀어 주다: 2024-11-30 22:38:12
원래의
587명이 탐색했습니다.

How Do Relative Include Paths Work in Nested PHP Includes?

PHP 상대 포함 경로 이해

PHP에서 여러 중첩 포함을 처리할 때 상대 포함 경로가 혼란스러울 수 있습니다. 포함된 파일의 올바른 경로를 결정하려면 해당 파일을 관리하는 범위 지정 규칙을 이해하는 것이 중요합니다.

PHP 스크립트를 실행하면 현재 작업 디렉터리가 스크립트가 있는 디렉터리가 됩니다. 이는 include 문에 지정된 상대 경로를 확인하기 위한 기본 경로 역할을 합니다. 그러나 중첩된 포함을 고려할 때 구별해야 할 사항이 있습니다.

메인 스크립트에 상대적

A.PHP 파일에 B.PHP 파일이 포함되고, B.PHP 파일이 포함되는 경우 C.PHP 파일에서 C.PHP의 상대 경로는 B.PHP가 아닌 A.PHP의 위치를 ​​기준으로 결정됩니다. 이는 include()가 현재 실행 중인 스크립트에 지정된 파일의 내용을 삽입할 뿐이기 때문입니다.

예:

// A.php is located at /var/www/html/
<?php include 'B.php'; ?>

// B.php is located at /var/www/html/includes/
<?php include 'C.php'; ?>

// C.php is located at /var/www/html/utils/
로그인 후 복사

이 시나리오에서는 상대 경로 C.PHP는 /var/www/html/utils/C.php입니다. /var/www/html/includes/utils/C.php.

상대 경로에 FILE 사용

포함을 만드는 파일의 위치를 ​​기반으로 상대 경로를 지정하려면 __FILE__ 상수를 활용할 수 있습니다. 이 상수는 현재 작업 디렉터리에 관계없이 항상 현재 코드 줄이 있는 실제 파일을 가리킵니다.

// Using __FILE__ in B.php
<?php include(dirname(__FILE__)."/C.PHP"); ?>
로그인 후 복사

이 경우 C.PHP에 대한 상대 경로는 B를 포함하는 디렉터리에서 시작됩니다. .PHP.

PHP의 포함 경로는 항상 기본 스크립트에 상대적이라는 점을 기억하세요. __FILE__을 활용하거나 포함 경로의 계층적 특성을 이해함으로써 복잡한 PHP 애플리케이션에서 상대 포함 문을 자신있게 처리할 수 있습니다.

위 내용은 중첩된 PHP 포함에서 상대 포함 경로는 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿