Предупреждение PHP при попытке использовать stat() или filemtime()
-
22-08-2019 - |
Вопрос
Я пытаюсь получить время последнего изменения файла, который определенно существует:/document_root/myfile.pdf -rwxr-xr-x 1 11018 11008 198621 26 ноября 2007 myfile.pdf
Когда я запускаю следующую инструкцию (через PHP CLI от имени root):filemtime('/document_root/myfile.pdf');
Я получаю ошибки:Предупреждение:статистика():Сбой статистики для /document_root/myfile.pdf (ошибка = 2 - такого файла или каталога нет)
Решение
Ты получаешь неправильный путь к файлу или ты у меня нет разрешения чтобы сохранить соответствующий файл.
Неправильный путь к файлу?
filemtime('/document_root/myfile.pdf');
Правильный путь к файлу?
filemtime($_SERVER['DOCUMENT_ROOT'].'/myfile.pdf');
Проверьте права доступа к файлу:может ли файл быть прочитан пользователем, под которым запущен PHP?
Другие советы
Вы не делаете что-то вроде запуска этого из функции, где вы не передали значение для document_root?
Вы уверены, что выбрали правильный путь?
/document_root/мой файл.pdf
Похоже на абсолютный путь, но я сомневаюсь, что ваш "document_root" находится в корневой файловой системе.
Если это не так, также убедитесь, что пользователь apache имеет доступ на чтение к самому файлу, а также доступ r + x ко всем каталогам, ведущим к пути к файлу.