filectime () [function.filectime]: сбой статистики для - PullRequest
0 голосов
/ 11 августа 2011

У меня есть эта проблема в приложении на основе Codeigniter.

A PHP Error was encountered

Severity: Warning

Message: filectime() [function.filectime]: stat failed for cache/6485224e8a2979278bc2725ce316d891717dbfad.php

Filename: libraries/Simple_cache.php

Line Number: 57

Ответы [ 3 ]

0 голосов
/ 16 октября 2013

Нашел это в моем поиске ответа:

Если в вашей системе целочисленный тип PHP составляет всего 32 бита, то filemtime () сбой на файлах более 2 ГБ с предупреждением «ошибка статистики». Все Команды, связанные со stat (), будут демонстрировать такое же поведение.

В качестве обходного пути вы можете вызвать системную команду stat, чтобы получить время модификации файла:

В FreeBSD: $ mtime = exec ('stat -f% m'. Escapeshellarg ($ path));

В Linux: $ mtime = exec ('stat -c% Y'. Escapeshellarg ($ path));

http://board.phpbuilder.com/showthread.php?10379026-RESOLVED-filectime-stat-failed-workaround

0 голосов
/ 29 апреля 2014

Поздно, однако, из вашего журнала ошибок было замечено, что вы используете библиотеку Simple Cache.

Ваша проблема может заключаться в том, что кэш создается как файл .cache, но строка, проверяющая его, использует расширение .php.

См:

$file_expires = file_exists(APPPATH.'cache/'.$key.'.cache') ? filectime(APPPATH.'cache/'.$key.'.php')+$this->expire_after : (time() - 10);

Должно быть:

$file_expires = file_exists(APPPATH.'cache/'.$key.'.cache') ? filectime(APPPATH.'cache/'.$key.'.cache')+$this->expire_after : (time() - 10);

Просто если кто-нибудь еще наткнется на это

0 голосов
/ 11 августа 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...