2011-08-10 72 views
0

我在基於Codeigniter的應用程序中遇到此問題。filectime()[function.filectime]:stat失敗

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 

回答

0
+0

別人絆倒不,我正在用的文件路徑參數調用。但它向我展示了這種w in。我再次把文件權限設置爲0777.但仍然存在問題。 –

0

在我搜索找到這一個答案:

如果PHP的整數您的系統上只有32位,filemtime()將 失敗的文件超過2GB與警告「統計失敗」。所有的 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

遲到了但是從您正在使用簡單緩存庫錯誤日誌注意。

您的問題可能是緩存創建爲.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); 

只是櫃面在這個