ホームページ  >  記事  >  バックエンド開発  >  PHP インクルード ファイル -set_include_path

PHP インクルード ファイル -set_include_path

WBOY
WBOYオリジナル
2016-06-20 12:41:07917ブラウズ

今日、set_include_path と get_include_path を使用しましたが、最初は少し混乱しましたが、次の結論が得られました。

1. get_include_path

この関数は、現在の include_path の値を取得するために使用されます。

string get_include_path (void)

たとえば、windos で XAMPP 出力を使用します: .;D:xamppphpPEAR

2. > set_include_path


set_include_path

() 関数は、PHP.ini 内の include_path を動的に変更します。スクリプト。

include_path は、include と require のパス範囲に制限 (事前定義) できます。

(1) include_path 値が設定されていない場合は、完全なパス を記述する必要がありますが、これにより多くの外部ファイル

が導入されます。次に例を示します。

<strong>include('123/test1.php'); include('123/test2.php');</strong>


(2)

include_path 値 を設定すると、は次のコードに置き換えることができます。

set_include_path('123/'); include('test1.php'); include('test2.php');
include や require を実行すると、include_path で指定したパスからインポートするファイルが検索されるため、パフォーマンスが最適化されているかはわかりませんが、コードを節約できます。 。もちろん謎もあるよ!

(3) この機能は 1 つのフォルダーだけでなく、多数のフォルダーを定義することもできます。次のように、初期化関数を記述します。

function initialize(){ set_include_path(get_include_path().PATH_SEPARATOR . 'core/'); set_include_path(get_include_path().PATH_SEPARATOR . 'app/'); set_include_path(get_include_path().PATH_SEPARATOR . 'admin/'); set_include_path(get_include_path().PATH_SEPARATOR . 'lib/'); set_include_path(get_include_path().PATH_SEPARATOR . 'include/'); set_include_path(get_include_path().PATH_SEPARATOR.'data/'); set_include_path(get_include_path().PATH_SEPARATOR.'cache/');}
そのパスは次のようになります。

.;C:\php5\pear;core/;app/;admin/;lib/;include/;data/;cache/
前の .;C:php5pear; は、php.ini の include_path のデフォルト値です。この考え方に従って、多くのフォルダーをロードする場合は、ファイル名を直接記述することができます。

複数の include_path を同時に設定する場合、PHP 定数 PATH_SEPARATOR を使用してそれらを区切ることができます。 Unix 系システムでは、PATH_SEPARATOR は「:」ですが、Windows システムでは、PATH_SEPARATOR の値は「;」です。 例:

set_include_path(implode(PATH_SEPARATOR, array(  realpath(APPLICATION_PATH . '/../lib'),  get_include_path(), )));


(4) include_path にディレクトリを指定しているが、必要なインクルードファイルが lib ディレクトリに見つからず、たまたまカレントページのディレクトリに存在した場合この名前のファイルが見つかると、そのファイルが現在のディレクトリに含まれるように変換されます。

例:

set_include_path('projectName/home/Action/lib');

(5) 指定した場合複数のディレクトリが include_path として設定されており、インクルードする必要があるファイルがこれらのディレクトリ内に同じ名前のファイルを持つ場合、PHP は include_path を設定するときに、最もランクの高いディレクトリ内のファイルを使用することを選択します。




声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。