2011-04-20 55 views
1

嗨,我得到這個錯誤時,包括在我的網站的緩存腳本..PHP - filemtime功能錯誤

Warning: filemtime() [function.filemtime]: stat failed for index.php in C:\xampp\htdocs\Content\content\cache.php on line 6

下面是腳本:

<?php 
class datemod{ 
    public $gmtime; 
    function date($files,$dbtable,$url){ 
     foreach($files as $val){ 
      $mod=date('Y/m/d H:i:s',filemtime($val)); 
      $array[]=$mod; 
     } 
     $fmod=max($array); 
     $result=mysql_query("SELECT DATE_FORMAT(pubdate,'%Y/%m/%d %H:%i:%s') AS pubdate FROM $dbtable WHERE url='$url'"); 
     while([email protected]_fetch_array($result,MYSQL_ASSOC)){ 
      $row[]=array('row'=>array_map('htmlspecialchars',$row)); 
      $pubdate=$row['pubdate']; 
     } 
     $maxmod=max($fmod,$pubdate); 
     $this->gmtime=date('D, d M Y H:i:s T',strtotime($maxmod)); 
    } 
    function cache($gmtime){ 
     if(isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])||isset($_SERVER['HTTP_IF_NONE_MATCH'])){ 
      if($_SERVER['HTTP_IF_MODIFIED_SINCE']==$gmtime){ 
       header('Status:304 Not Modified',true,304); 
       exit(); 
      } 
     } 
     header("Last-Modified:$gmtime"); 
    } 
} 
?> 

我似乎無法找到最新怎麼了..任何幫助?

+0

我們可以看一下這個函數是如何被調用?一個常見的錯誤是在文件目錄中調用filemtime()。 – Flipper 2011-04-20 00:27:20

回答

2

報警被觸發,因爲在當前目錄中沒有文件index.php(可通過檢索getcwd()

+0

非常感謝 – Ricki 2011-04-20 13:27:32

1

這意味着傳遞到filemtime()的文件不存在,或者程序沒有權限訪問其屬性。

也許首先顯示或記錄$val,看看它是否是預期的。如果一切看起來都很好,那麼請檢查文件權限,包括路徑中的每個目錄。

+0

感謝您的快速回復 – Ricki 2011-04-20 13:28:00