首先,我想道歉,如果这个问题已经得到解答,我正在寻找两天没有运气。
这是我的设置:
我有两个不同文件夹中的2个php文件:
AAA / 1.PHP AAA / BBB / CCC / 2.PHP
“2.php”包含在“1.php”中。
由于我需要在几个不同的文件夹中使用“2.php”,我需要它能够知道他本地化的文件夹。所以在“2.php”中我应该有一些代码:
$directory = [whatever code I need to know where I am];
所以在上面的例子中,相对路径应该是:BBB / CCC
我尝试了几个函数和编码,但我只能获得“1.php”的完整服务器路径。
任何人都可以帮助我吗?
答案 0 :(得分:2)
我相信你要找的是dirname(__FILE__);
有关详细信息,请参阅PHP: Magic Constants和dirname()
。
__FILE__
文件的完整路径和文件名。如果在include中使用,则返回包含文件的名称。从PHP 4.0.2开始, FILE 始终包含已解析符号链接的绝对路径,而在旧版本中,它包含一些相对路径 情况。
答案 1 :(得分:0)
您可以使用文档根作为路径的开头,这样您就不用担心了。
e.g。
$_SERVER['DOCUMENT_ROOT'].'/AAA/1.php'
和
$_SERVER['DOCUMENT_ROOT'].'/AAA/BBB/CCC/2.php'
只要你的php.ini配置没有太大改变,应该无论你身在何处都可以工作。
或者您可以使用basename(),dirname()
的组合