假设我有这个网站文件的根结构:
在前端文件夹中有一个名为config.php的文件。在这个文件中,我得到了我的网站的网站根目录:
define('ROOT', dirname(__FILE__));
此文件也包含在前端和后端的两个索引文件(index.php)中。但对于后端,根目录是/ home / username / public_html / admin /,实际应该是/ home / username / public_html /。我怎么能在config.php中用一行呢?
LE
答案 0 :(得分:2)
FILE为您提供文件的完整路径和文件名。
dirname()返回父目录的路径。
所以,如果您使用:
define('ROOT', dirname(__FILE__));
它为您提供了当前脚本位置的目录结构。
要进入admin/
并返回上一个文件夹:
$path = dirname(__FILE__);
define("ROOT", $path.'/../');
// Outputs: /home/username/public_html/
位于admin/
内的一行:
define("ROOT", dirname(__FILE__).'/../');
在一行中为两个位置设置相同的路径:
define("ROOT", (strpos(dirname(__FILE__), "admin")>=0) ? (str_replace("admin", "", dirname(__FILE__))) : (dirname(__FILE__)));
这将在index.php上输出:
/home/username/public_html
/home/username/public_html
答案 1 :(得分:0)
您可以使用
define('ROOT', $_SERVER['DOCUMENT_ROOT']);