PHP - ошибка функции filemtime - PullRequest
       13

PHP - ошибка функции filemtime

1 голос
/ 20 апреля 2011

Привет, я получаю эту ошибку, когда скрипт кэша включен на моем сайте ..

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($row=@mysql_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");
    }
}
?>

Кажется, я не могу найти, что с ним не так .. какая-нибудь помощь?

Ответы [ 2 ]

2 голосов
/ 20 апреля 2011

Предупреждение выдается, потому что в текущем каталоге нет файла index.php (можно получить с помощью getcwd())

1 голос
/ 20 апреля 2011

Это означает, что либо файл, переданный в filemtime(), не существует, либо программа не имеет разрешения на доступ к его атрибутам.

Возможно, начните с отображения или входа в систему $val, чтобы посмотретьэто то, что ожидается.Если все выглядит хорошо, проверьте права доступа к файлам, в том числе для каждого каталога в пути.

...