0

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

这是我的设置:

我有 2 个 php 文件,位于 2 个不同的文件夹中:

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”的完整服务器路径。

谁能帮我?

4

2 回答 2

2

我相信你正在寻找的是dirname(__FILE__);

请参阅PHP:魔术常数dirname()更多信息。

__FILE__ 文件的完整路径和文件名。如果在包含中使用,则返回包含文件的名称。自 PHP 4.0.2 起, FILE始终包含一个绝对路径,其中符号链接已解析,而在旧版本中,它在某些情况下包含相对路径。

于 2012-10-15T21:46:38.417 回答
0

您可以使用文档根目录作为路径的开始,这样您就不必担心它了。

例如

$_SERVER['DOCUMENT_ROOT'].'/AAA/1.php'

$_SERVER['DOCUMENT_ROOT'].'/AAA/BBB/CCC/2.php'

只要您的 php.ini 配置没有太大变化,无论您身在何处都应该可以工作。

或者您可以使用basename()dirname()的组合

于 2012-10-15T21:48:50.117 回答