ホームページ >バックエンド開発 >PHPチュートリアル >PHP_PHP チュートリアルの相対ディレクトリの問題を解決する最も効果的な方法
情報を収集し、複数のテストを行った結果、他の Web プログラミング言語では相対パスは現在処理中のファイル ディレクトリに基づいていますが、PHP ではそうではないことがわかりました。 php の相対パスは、現在の処理ファイル ディレクトリではなく、現在の作業ディレクトリに基づいているため、開発プロセス中に多くの問題が発生します。
include または require を使用してファイルをインクルードする場合は、ファイル パスの前に dirname(__file__) を追加します。例: 現在、4 つのファイル a.php、b.php、c.php、d.php があり、それらの関係は次のとおりです:
b.php (ルートディレクトリと同じレベル)
ルートディレクトリ/a.php
ルートディレクトリ/c.php
ルートディレクトリ/dir/d.php
これで、a.php には b.php と c.php が含まれるはずです。以下のように書かれています
include_once(dirname(__file__)."/../b.php"); include_once(dirname(__file__)."/c.php"); ?> |
c.php に d.php が含まれている場合。以下のように書かれています
include_once(dirname(__file__)."/dir/d.php"); ?> |
この方法は現在、パスのずれを解決する最も効果的な方法です
に基づいています。