【问题标题】:PHP find if file in different top folder existsPHP查找不同顶级文件夹中的文件是否存在
【发布时间】:2011-06-07 07:59:35
【问题描述】:

我想要做的是查找不同顶级文件夹中的文件是否存在。

假设我想访问文件this "page".html,我必须像这样访问它:

file_exists('../data/pages/this "page".html')

但这不起作用,它只会返回 false。有什么建议吗?

我正在制作一个平面文件 cms,所以文件名可以有引号。网址:http://ffcms.comxa.com/admin 用户:tann98 通过:pswd

提前致谢。

【问题讨论】:

  • 您要访问的文件名称中实际上没有引号是吗??
  • @Mala:没有错误。只是 file_exists 返回 false。 @JMC Creative:可以。我正在制作的是一个平面文件 cms。所以它可以有引号。
  • 不。不在安全模式下。您可以在此处检查 Apache 设置:ffcms.comxa.com/admin/info.php

标签: php file quotes


【解决方案1】:

并确保使用 dirname(FILE) 真正从正确的文件夹开始 - 如果您的函数调用位于包含的文件中,这一点很重要...

file_exists(dirname(__FILE__).'/../data/pages/this page.html')

【讨论】:

  • 一切都在根目录中。 dirname(__FILE__) 返回一个服务器路径。
  • 真的吗?嗯……不过对我没用。顺便说一句,它试图访问/home/a1160843/public_html/admin/../data/pages/More "Stuff".html 编辑过的帖子...
【解决方案2】:

试试这个

file_exists('../data/pages/this%20"page".html');

%20 表示 空格 字符

file_exists 在文件系统上工作,而不是通过 HTTP。所以 %20 不会被识别为空格,而是字面上的 %20 使用空格来代替:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-05
    • 2015-10-18
    • 2019-12-30
    • 1970-01-01
    • 2019-03-21
    • 1970-01-01
    相关资源
    最近更新 更多