0

私はphpでいくつかのキャッシュコードをテストしています:

   if (is_readable($cachefile) && (time() - $cachetime
     < filemtime($cachefile))) 
  {
            include($cachefile);
   […]

何をすべきか: $cachefileがすでに存在する場合にのみincludeを実行します。そうでない場合は、$cachefileをインクルードしようとせずに続行することになっています。

内容: 毎回$ cachefileを読み込もうとするため、存在しない場合はphp警告が作成されます。

通常はインクルードが実行されないようにするすべてのことを試したので、それを修正する方法がわかりません。誰かが助けることができますか?
ありがとう!

4

2 に答える 2

0

if(file_exists('file.php'))include'file.php';

于 2013-01-06T12:08:04.090 に答える
0

このようにしてみてください

if (isset($cachefile) && ((time() - $cachetime) < filemtime($cachefile))) 
{
    include($cachefile);
}

issetまたは機能を使用できますfile_exists。ここにドキュメントがあります=>

http://php.net/manual/en/function.file-exists.php

http://php.net/manual/en/function.isset.php

:( )で、のURLが正しいWrap time() - $cachetimeことも確認してください$cachefile

于 2013-01-06T12:14:42.807 に答える