0

複数../を使用してファイルを検索しても、ファイルを見つけることができません。

root -> public -> secure -> lock  -> login / "data.php"
                            panel -> data -> list / "list.php"

data.php私は自分に含めたいと思ってlist.phpおり、データを含めるために次のことを試みました:

include("../../../../lock/login/data.php");
include("../../../lock/login/data.php");
and also
include("../../lock/login/data.php");

ただし、これは機能していないようですが、横に置いてlist.php次の操作を行うと、データが正常に読み取られます。

include("data.php");

コードのどこが間違っていますか?これを実行するより良い方法は何ですか?

4

2 に答える 2

2

使い方を学ぶ

__FILE__; // for your current file path
dirname(__FILE__) or __DIR__; // for your current file parent folder
$_SERVER['DOCUMENT_ROOT']; // for your sites inception folder, your pivotal point

これはあなたをあなたの道に連れて行くはずです。次に、次のことができます

include __DIR__.'/../file-REALLY-relative-to-directory-of-edit-file.php';
include $_SERVER['DOCUMENT_ROOT'].'/absolute-path-reliable-for-your-site.php';

決して相対的なものが含まれることはありません (現在のディレクトリは変更され、あなたの世界を壊す可能性があります)

include 'an-unreliable-NOT-REALLY-relative-file.php';

それが役に立てば幸い!

于 2012-10-21T17:19:13.587 に答える
1

代わりにphpsinclude_path機能を使用し、含めるphpスクリプトを含むディレクトリを指定してください。より簡単で安全。

于 2012-10-21T16:39:25.887 に答える