PHP路径麻烦

时间:2013-02-26 18:20:52

标签: php path pathing

我有一个文件,functions.php。 在文件中有一些指向特定位置的函数,例如:

function returnFolders() {
    $folders = array_filter(glob("images/*"), 'is_dir');
    return $folders;
}

此函数返回images.php文件所在的images /文件夹中的目录。

问题在于,如果我在function.php所在的另一个文件夹中的脚本中包含此function.php,则此函数将无法给出正确的结果。

如何解决这个问题,所以它总会返回functions.php所在的文件夹?

路径如下:

common/functions.php
common/images/1
common/images/2
common/crons/im_including_functions.php
dir1/im_also_including_functions.php
d3/me_too.php

2 个答案:

答案 0 :(得分:1)

查看magic constants

例如,您可以使用__DIR__获取当前脚本目录。

在不了解您的目录结构的情况下,我真的不能更具体。


第二个想法,在我看来,对于你的案例来说,更好的解决方案是使用images文件夹的绝对路径。这样,无论这个函数在哪里运行,它都会在同一个地方寻找images

答案 1 :(得分:0)

它是关于相对路径和绝对路径 当你使用相对路径时,它从运行代码的文件开始

所以首先你应该理解这两种类型的路径

http://webdesign.about.com/od/beginningtutorials/a/aa040502a.htm

以后您可以找到解决此问题的解决方案的最佳方法

关于路径的php函数的一点帮助 http://php.net/manual/en/function.realpath.php

希望这有帮助;)