【问题标题】:PHP Warning when attempting to use stat() or filemtime()尝试使用 stat() 或 filemtime() 时的 PHP 警告
【发布时间】:2009-03-30 20:34:27
【问题描述】:
我正在尝试获取确实存在的文件的最后修改时间:
/document_root/myfile.pdf
-rwxr-xr-x 1 11018 11008 198621 2007 年 11 月 26 日 myfile.pdf
当我运行以下语句时(通过 PHP CLI 作为 root):
filemtime('/document_root/myfile.pdf');
我收到错误:
警告:stat():/document_root/myfile.pdf 的统计失败
(errno=2 - 没有这样的文件或目录)
【问题讨论】:
标签:
php
linux
command-line-interface
【解决方案1】:
您的文件路径错误或您无权统计相关文件。
文件路径错误?
filemtime('/document_root/myfile.pdf');
正确的文件路径?
filemtime($_SERVER['DOCUMENT_ROOT'].'/myfile.pdf');
检查文件的权限:运行PHP的用户是否可以读取该文件?
【解决方案2】:
您没有在未传递 document_root 值的函数中执行类似的操作吗?
【解决方案3】:
你确定你有正确的路径吗?
/document_root/myfile.pdf
看起来像一个绝对路径,但我怀疑您的“document_root”是否在根文件系统中。
如果不是这样,还要确保 apache 用户具有对文件本身的读取权限,以及对指向文件路径的所有目录的 r+x 访问权限。