设置相对路径根目录


glob - set relative path root directory

我在php中遇到了一些问题,尽管我做了一些研究,但我似乎无法找到解决我问题的答案。

首先到我的目录结构:

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

我想访问文件夹'images'中的子文件夹'gallery'。因此:在我的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

提前谢谢你,Stuben

您通常做的是使用__DIR__从当前脚本的文件夹构建相对路径。您还可以使用__DIR__来知道要从最终路径中剪切哪一部分,因为您应该知道当前文件在项目中的位置,从而知道根文件相对于它的位置。

$images = glob(__DIR__."/../images/gallery/*.*");在不关心当前工作目录的情况下获得图像列表,之后可以使用realpath(__DIR__.'/..')计算从每个文件路径中截取多少。