PHPで、次のようなサブディレクトリからのファイルを必要とするファイルがある場合:
require('directory/file.php');
file.php
独自のディレクトリに別のファイルを要求したい場合、パスは相対パスfile.php
ですか、それとも含まれているファイルですか?
それが理にかなっている場合は、元の必要なファイルに相対的です。
したがって、次のような index というファイルがあるとします。
require("./resources/functions.inc.php");
そして functions.inc.php は次のようになります:
require("./resources/anotherFunctionsFile.inc.php");
それよりも:
require("anotherFunctionsFile.inc.php);
しかし、実際には定数を使用する必要があります__DIR__
。これは、常にスクリプトが実行されるディレクトリです。それは物事をずっと簡単にします。
__DIR__
およびその他の定数に関する詳細情報: http://php.net/manual/en/language.constants.predefined.php
それが役立つことを願っています。
これは、メイン スクリプト (この場合は A.php) に関連しています。require()
現在実行中のスクリプトにコードを挿入するだけであることを忘れないでください。
つまり、どのファイル
require()
から呼び出されるかは重要ですか
いいえ。
それを問題にしたい場合は、require()
B.php との相対関係を作りたい場合は、__FILE__
定数 (または__DIR__
PHP 5.3 以降) を使用します。これは、コードが配置されている場合、その行のリテラルの現在のファイルを常に指します。
include(dirname(__FILE__)."/C.PHP");
include(dirname(__FILE__).'/include.php');
参照: http://php.net/manual/en/language.constants.predefined.php
ファイルのフル パスとファイル名。インクルード内で使用すると、インクルードされたファイルの名前が返されます。PHP 4.0.2 以降、FILE には常にシンボリック リンクが解決された絶対パスが含まれていましたが、古いバージョンでは状況によっては相対パスが含まれていました。