[PHP-users 1475] Re: include_path

Yasuo Ohgaki php-users@php.gr.jp
Fri, 24 Aug 2001 10:06:17 +0900


大垣です。

> ソフト工房の近藤です。
*SNIP*
> > 大垣です。
*SNIP*
> > 多分、各ユーザーに独自のインクルードパスを設定したいということと思
いま
> > す。個人的には
> >
> > define ('INCLUDE_PATH', '/home/user/foo/php_include/');
> > include(INCLUDE_PATH.'file_to_include.php');
> >
> > 等として利用してもらうのが良いと思います。私は移植性も高くなるの
で、い
> > つもこのようにしてインクルードしています。
> ...略....
>
> サイトの方針で、.htaccess による Override を禁止している
> ところや、JavaScritp 禁止のところもあるので悩みですね。
>
> 私は別の目的で、このような方法を検討中なのですが、大垣
> さんは、define('INCLUDE_PATH'...  をどこに置かれてますか?。
> 私は、define は、まとめて include_path の下にインクルード
> ファイルとして置いているので、どこで上記の指定をするかです。

ホスティングサービス利用時の設定をどうするか、と言うことと思います。私
の設定はあまり参考にならないかも知れません。

私はinclude_pathとして設定されているディレクトリにconfig.incと言うファ
イルを置いています。ここでINCLUDE_PATH定数を設定しています。私が作って
いるアプリは、アプリ毎にサーバーがあるか少なくとも別のVirtual Hostに
なっています。include_pathはhttp.confにまとめてphp_admin_valueとして設
定しています。
# php.iniのinclude_pathは""に設定しています。

Webサーバーの設定は全て変更できるので、INCLUDE_PATHコンスタントを定義
する必要性はあまり無いのですが、以下の理由から使用しています。
1.APC(Another PHP Cache)利用上の都合。
2.サーバーの設定が変更できない環境に対応するため。
3.フルパスの方が若干早い実行速度を期待できる。

サーバーの設定が変更できないホスティングサービスを利用しているとした
ら、素直にinclude_pathで設定されているディレクトリにconfig.incを置くと
思います。

--
Ohgaki, Yasuo (大垣 靖男) 
Mail: yohgaki@dd.iij4u.or.jp