현재 위치: > 최신 기사 목록> PHP에서 get_include_path ()를 디버그하는 방법과 파일 포함 경로를 찾으십시오.

PHP에서 get_include_path ()를 디버그하는 방법과 파일 포함 경로를 찾으십시오.

gitbox 2025-05-26

include_path 는 PHP 구성에서 중요한 옵션으로, 진술을 포함하거나 요구할 때 PHP가 찾는 파일의 디렉토리 목록을 지정하기 위해 중요한 옵션입니다. 이 구성은 php.ini 파일로 설정하거나 코드를 통해 동적으로 수정할 수 있습니다. PHP는 경로 목록이 포함 된 순서 대상 파일을 찾습니다.

예를 들어, 기본 include_path는 다음과 같은 것일 수 있습니다.

 .:/usr/local/lib/php

즉, PHP는 먼저 현재 디렉토리 ( . )에서 찾아온 다음 /usr/local/lib/php 디렉토리로 이동하여 찾아보십시오.

2. get_include_path () 함수 소개

get_include_path ()는 호출 후 현재 PHP 환경에서 포함 된 경로 문자열을 반환하는 매개 변수가없는 함수입니다. 이 문자열을 보면 개발자는 포함 된 파일을 찾는 PHP가 어떤 디렉토리를 확인할 수 있는지 확인할 수 있습니다.

문법:

 string get_include_path(void);

반품 값 :

Path_Separator (Linux/Unix의 콜론 : Windows 아래의 세미콜론 ; )로 분리 된 경로 목록이 포함 된 문자열을 반환합니다.

3. get_include_path ()를 사용하여 포함 된 파일 경로를 디버그하는 방법은 무엇입니까?

  1. 현재 포함 된 경로를 인쇄하십시오

코드에 다음 문을 삽입하십시오.

 echo '현재 포함 된 경로는입니다:' . get_include_path();

이렇게하면 PHP가 포함 된 파일을 찾을 위치를 직접 확인할 수 있습니다.

  1. 포함 된 경로를 조정하십시오

포함 경로에 원하는 디렉토리가 포함되어 있지 않으면 SET_INCLUDE_PATH () 함수를 통해 동적으로 조정할 수 있습니다.

 set_include_path(get_include_path() . PATH_SEPARATOR . '/path/to/your/include/dir');
  1. 포함 또는 요구 사항을 사용할 때 경로를 포함합니다

절대 경로를 사용하지 않으면 파일이있는 디렉토리가 포함 된 경로에 있는지 확인하여 PHP가 파일을 올바르게 찾을 수 있도록 할 수 있습니다.

4. 샘플 데모

다음과 같이 프로젝트 구조가 있다고 가정합니다.

 /var/www/gitbox.net/project/
    ├── index.php
    ├── config/
    │     └── config.php

Index.phpconfig/config.php를 포함 시키려고하지만 다음과 같이 작성되었습니다.

 include 'config.php';

현재이 프로그램은 오류를보고하고 파일을 찾을 수 없습니다.

get_include_path ()를 사용하여 현재 포함 된 경로를 볼 수 있습니다.

 <?php
echo '경로를 포함하십시오:' . get_include_path() . PHP_EOL;

// 동적으로 추가되었습니다 config 目录到경로를 포함하십시오
set_include_path(get_include_path() . PATH_SEPARATOR . __DIR__ . '/config');

include 'config.php';  // 이제 파일을 올바르게 찾을 수 있습니다
?>

이런 식으로 PHP는 현재 작업 디렉토리에 관계없이 포함 경로에서 config.php를 찾습니다.

5. 예방 조치와 제안

  • 절대 경로 사용 : 파일을 포함시킬 때는 절대 경로를 사용하여 다른 작업 디렉토리로 인한 파일 고장 문제를 피하십시오. 스 플라이 싱 경로를 지원하기 위해 __dir__ 또는 dirname (__ file__) 을 사용할 수 있습니다.

  • Debugging 중에 포함 된 _PATH 점검 : 포함 파일이 실패하면 첫 번째 단계는 get_include_path ()를 인쇄하여 포함 경로가 올바르게 설정되어 있는지 확인하는 것입니다.

  • php.ini 구성 : 프로덕션 환경에서 Php.ini 에 포함 된 경로를 설정하여 코드의 경로를 동적으로 수정하여 발생하는 복잡성을 줄이는 것이 가장 좋습니다.

결론

get_include_path () 함수를 통해 개발자는 PHP의 현재 포함 경로 설정을 명확하게 볼 수 있으므로 포함 된 파일의 검색 문제를 효과적으로 배치 할 수 있습니다. 포함 된 경로의 동적 조정과 결합하여 절대 경로를 사용하면 프로젝트에서 포함 된 파일 관리의 안정성과 유지 관리를 크게 향상시킬 수 있습니다. 이 기사를 소개하면 PHP에 파일 경로를 포함하는 디버깅 기술을 더 잘 마스터하는 데 도움이되기를 바랍니다.

 <?php
// 샘플 코드,调试경로를 포함하십시오
echo '当前경로를 포함하십시오:' . get_include_path() . PHP_EOL;

// 添加自定义目录到경로를 포함하십시오
set_include_path(get_include_path() . PATH_SEPARATOR . __DIR__ . '/lib');

include 'myfile.php';  // 여기 PHP 会在경로를 포함하십시오中寻找 myfile.php
?>