如何找到另一个php文件中包含的php文件的相对路径?

时间:2012-10-15 21:43:22

标签: php

首先,我想道歉,如果这个问题已经得到解答,我正在寻找两天没有运气。

这是我的设置:

我有两个不同文件夹中的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”的完整服务器路径。

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:2)

我相信你要找的是dirname(__FILE__);

有关详细信息,请参阅PHP: Magic Constantsdirname()

  

__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()

的组合