私はPHPを学び始めたばかりで、ほとんど同じような質問に対するいくつかの回答を読みましたが、役に立ちませんでした。
私はいくつかのファイルを持っています:
index.php
folder1\file.php
folder2\file.php
index.php
含まれているのでfolder1\file.php
、それは本当に簡単です。次に、をfolder1\file.php
含みfolder2\file.php
ます。私が読んでいる本はこれをするように言っています私はこれを中に書かなければなりませんfolder1\file.php
:
require $_SERVER['DOCUMENT_ROOT'] . '/' . 'folder2/file.php';
それで、基本的になぜ彼らはこれをしなかったのですか?
require 'folder2/file.php';
私が理解している限り、すべてのパスは常に最初のスクリプトの場所を基準にしており、私のマシンでは問題なく機能します。
.\folder\file.php
ディレクトリを深く移動したり、Webサイト全体を別のマシンにコピーしたりしても、機能し続ける 理由がまだわかりません 。
マニュアルによると:パスが定義されている場合(絶対(ドライブ文字または\
Windows、 Unix / Linuxシステムで始まる)または現在のディレクトリからの相対パス(または/
で始まる))、インクルードパスは完全に無視されます。たとえば、ファイル名が。で始まる場合、パーサーは親ディレクトリを検索します。.
..
../