현재 위치: > 최신 기사 목록> php에서 포함 된 경로를 수정하는 방법 : get_include_path () 및 set_include_path ()

php에서 포함 된 경로를 수정하는 방법 : get_include_path () 및 set_include_path ()

gitbox 2025-05-29

PHP 응용 프로그램을 개발할 때는 종종 여러 디렉토리간에 코드 모듈을 구성하고 재사용해야합니다. PHP는 포함 , 요구 및 기타 진술과 같은 명령문을 포함하여, 요구 및 기타 진술을 올바르게 찾을 수 있도록 get_include_path ()set_include_path () 함수를 제공하여 포함 된 경로를 유연하게 관리합니다. 이 기사는이 두 기능과 실제 응용 시나리오의 사용법을 자세히 소개합니다.

1. get_include_path () : 현재 포함 된 경로를 가져옵니다

get_include_path ()는 현재 PHP에 대한 포함 경로 설정을 얻는 데 사용됩니다. 포함 경로는 PHP가 포함 된 파일을 찾는 디렉토리 목록입니다.

 echo get_include_path();

출력은 다음과 유사합니다.

 .:/usr/local/lib/php

즉, PHP는 먼저 현재 디렉토리 ( . )에서 파일을 찾은 다음 /usr/local/lib/php 에서 파일을 찾습니다.

2. set_include_path () : 새 포함 경로를 설정하십시오

set_include_path ()를 사용하여 php의 포함 경로를 수정하십시오. 이 기능은 새 경로 목록을 나타내는 문자열을 수용하고 디렉토리는 시스템 경로 분리기 (UNIX/LINUX 시스템의 콜론 : Windows의 세미콜론 ; )로 연결됩니다.

예 : 경로를 포함하도록 사용자 정의 디렉토리를 추가하십시오

 $customPath = '/var/www/html/includes';
set_include_path(get_include_path() . PATH_SEPARATOR . $customPath);

이 코드는 기존 포함 경로를 기반으로 /var/www/html/포함 디렉토리를 추가합니다.

3. 실제 적용 : 모듈 식 개발

/var/www/html/libs 디렉토리에 배치 된 공개 기능 파일 함수가 있다고 가정 해 봅시다. 이 파일을 기본 프로그램에 포함시키기 위해 다음을 수행 할 수 있습니다.

 set_include_path(get_include_path() . PATH_SEPARATOR . '/var/www/html/libs');

include 'functions.php';

포함 경로를 설정하면 각 파일에서 상대적 또는 절대 경로 참조 모듈을 사용할 필요가 없어 코드의 가독성과 유지 보수 가능성을 향상시킵니다.

4. stream_resolve_include_path ()를 사용하여 파일이 포함될 수 있는지 확인하십시오.

현재 포함 경로를 통해 파일을 찾을 수 있는지 확인하려면 stream_resolve_include_path () 함수를 사용할 수 있습니다.

 $file = 'config.php';
$resolvedPath = stream_resolve_include_path($file);

if ($resolvedPath !== false) {
    echo "파일 위치: $resolvedPath";
} else {
    echo "파일을 찾을 수 없습니다 $file";
}

5. URL과 함께 사용합니다 (예 : Fopen을 통한 원격 파일 포함)

포함요구 사항URL 포장지 (예 : http : // )를 지원할 수 있지만이 방법은 일반적으로 실제 생산 환경에서 권장되지 않습니다. 사용하려면 다음을 수행 할 수 있습니다.

 $url = 'http://gitbox.net/includes/config.php';
include $url;

이 원격 포함이 올바르게 작동하려면 allow_url_include 설정을 켜야합니다 (보안상의 이유로 기본값이 꺼집니다).

php.ini에서 수정할 수 있습니다.

 allow_url_include = On

또는 코드를 통해 동적으로 설정하십시오.

 ini_set('allow_url_include', '1');

6. 요약

  • get_include_path ()를 사용하여 현재 포함 경로 설정을보십시오.

  • set_include_path ()를 사용하여 경로를 동적으로 추가하거나 수정하여 코드 모듈화에 편리합니다.

  • stream_resolve_include_path () 와 함께 파일을 찾을 수 있는지 확인할 수 있습니다.

  • 원격 포함이 지원되지만주의해서 사용해야하며 로컬 경로 관리를 선호해야합니다.

이러한 기능을 합리적으로 사용함으로써 PHP 프로젝트의 구조적 선명도와 유지 보수 가능성을 크게 향상시킬 수 있습니다.