是否可以使用具有PHP Scandir的相对路径,并且身份验证会影响Scandir吗?
-
10-10-2019 - |
题
我的网站上有一个身份验证的目录,其中包含许多照片目录。如果您登录,则可以访问这些照片。
/admin/galleries/
我想在该目录之外构建另一个页面,我可以授予来宾访问身份验证目录中的目录列表。
/guest/access/
我只需要一个简单的目录列表 /admin/galleries/
dir。我正在尝试使用Scandir。
$folderlist = scandir("../../admin/galleries");
这不会返回 false
, ,但它返回空。我不确定为什么?该目录上的身份验证是通过Scandir阻止访问权限的?我不会想到这会影响像Scandir这样的服务器流程。
相对路径是问题吗?当我在内部制作一个虚拟目录 /guest/access/
并将Scandir路径更改为 scandir(".")
, ,它输出该目录的名称。但是,如果我将同一目录移至 /guest/
目录和将Scandir更改为 scandir("..")
或者 scandir("../../guest")
, ,它再次返回空。那让我认为是 不是 一个身份验证问题,但是Scandir本身有什么?
解决方案 2
很抱歉将这个问题没有解决这么长时间:
它不是空的,我只是没有将正确的相对路径纳入我的回声语句,并通过is_dir()语句运行,该语句返回false,因为这些目录在本地目录中不存在。愚蠢的错误。
其他提示
尝试使用 dirname(__FILE__)
在你之前 /../../
不隶属于 StackOverflow