我有一个文件,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
答案 0 :(得分:1)
例如,您可以使用__DIR__
获取当前脚本目录。
在不了解您的目录结构的情况下,我真的不能更具体。
第二个想法,在我看来,对于你的案例来说,更好的解决方案是使用images
文件夹的绝对路径。这样,无论这个函数在哪里运行,它都会在同一个地方寻找images
。
答案 1 :(得分:0)
它是关于相对路径和绝对路径 当你使用相对路径时,它从运行代码的文件开始
所以首先你应该理解这两种类型的路径
http://webdesign.about.com/od/beginningtutorials/a/aa040502a.htm
以后您可以找到解决此问题的解决方案的最佳方法
关于路径的php函数的一点帮助 http://php.net/manual/en/function.realpath.php
希望这有帮助;)