glob - 设置相对路径根目录

时间:2015-10-03 12:38:58

标签: php path root relative-path glob

我在php中使用glob遇到了一些麻烦,虽然我做了一些研究,但我似乎无法找到问题的答案。

首先到我的目录结构:

/ (root)
 /images (folder)
       - gallery/ (sub folder containing image files)
 /pages (folder)
       - gallery.php

我想访问子文件夹' gallery'在文件夹' images'。所以:在我的gallery.php文件中,我得到了以下内容:

$images = glob("/images/gallery/*.*");

这不起作用。

如果我将路径更改为" ../ "

,工作是什么?
$images = glob("../images/gallery/*.*");

或者如果我将代码更改为:

define('BASE', $_SERVER['DOCUMENT_ROOT']);
$images = glob(BASE."/images/gallery/*.*");

不幸的是,源代码显示了一些信息,我不确定我是否真的要公开

e.g.    
/home/scecjwkh/htdocs/images/gallery/3.JPG

我希望我提供的信息足以真正理解我的问题。不知道为什么我在相对路径上遇到这么多麻烦o.O

提前谢谢你, 斯塔

1 个答案:

答案 0 :(得分:1)

您通常使用__DIR__从当前脚本的文件夹构建相对路径。您还可以使用__DIR__来了解从最终路径中切割的部分,因为您应该知道项目在当前文件的位置,从而知道根与其相对的位置。

$images = glob(__DIR__."/../images/gallery/*.*");获取图片列表而不关心current working dir,之后您可以使用realpath(__DIR__.'/..')计算从每个文件路径中剪切的数量。