PHPのinclude_path設定

WBOY
WBOYオリジナル
2016-06-23 14:35:221234ブラウズ

 

通常、php.ini を変更して php の include_path を設定します。
サーバーへのアクセス許可がない場合があります。 include_path にディレクトリを追加すると、既存のプログラムと競合する場合があります。 Cakephp からインスピレーションを得たものです。 app/webroot ディレクトリのindex.php には次のコードがあります

     ini_set('include_path', CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . APP_DIR . DS . PATH_SEPARATOR . ini_get('include_path'));


このプログラムが include_path を動的に変更することがわかります。ただし、ここでのcakeはinclude_pathにCAKE_CORE_INCLUDE_PATHとAPP_DIRを追加し、これら2つのディレクトリに含まれるプログラムを見つけることを優先します。
ここでは変数 PATH_SEPARATOR が使用されていることに注意してください。このようにして、このコードは Windows と Linux で広く使用できます。

これにヒントを得て、必要に応じていくつかのインクルード ディレクトリを動的に追加できます。たとえば、lib1、lib2、lib3 など、多くのライブラリがあります。これらのライブラリは互いに競合する可能性があるため、これらのライブラリを include_path に追加する必要はありません。
inc_dir を作成し、このディレクトリを include_path に追加できます。 inc_dir配下に、 inc_path1.php inc_path2.php inc_path3.php
を作成し、それぞれ

     <?php//set_include_path('.'.PATH_SEPARATOR.get_include_path().PATH_SEPARATOR.'E:/DQG/inc');ini_set('include_path', ini_get('include_path').PATH_SEPARATOR.$dirToLib1);<?phpini_set('include_path', ini_get('include_path').PATH_SEPARATOR.$dirToLib2);<?phpini_set('include_path', ini_get('include_path').PATH_SEPARATOR.$dirToLib3);

プログラムを書くとき、例えばlib2のfunctions.php
を使いたい場合は、次のように書くことができます

れーれー

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