PHPのインクルードパスについて質問です。
私の環境で
PHP
1echo phpinfo();
で確認したところinclude_pathは
.:/usr/local/lib/php
となっていました。
先頭のドットはどういう意味でしょうか?
カレントディレクトリの意味かなと思って、試しにphp.iniに
include_path = "/usr/local/lib/php"
を追記してWEBサーバを再起動して、カレントディレクトリの他のファイルをインクルードするプログラムを実行してみましたが普通に動きました。
PHP
1require_once("hoge.php");
追記(otnさんの指摘を受けてやってみました)
hoge.phpを
PHP
1echo __DIR__;
として
/usr/local/lib/php と /usr/local/apache2/htdocs(カレントディレクトリ)に配置
include_path = "/usr/local/lib/php"
として
PHP
1require_once("hoge.php");
を実行すると結果は
/usr/local/lib/php
include_path = ".:/usr/local/lib/php"
として
PHP
1require_once("hoge.php");
を実行すると結果は
/usr/local/apache2/htdocs
include_path = "/usr/local/lib/php":.
として
PHP
1require_once("hoge.php");
を実行すると結果は
/usr/local/lib/php
となりました。なるほど。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/17 22:00