単純なキャッシュの例 (しかし単純すぎる!)
?// まず、ファイルを書き込むための「キャッシュ」ディレクトリを作成します
関数 BZ_cache ($url,$cacheName)??
{
グローバル $キャッシュ ;??
グローバル $QUERY_STRING
// ここでは、自分の習慣に従って名前を付けることができます??
$filename = "cache/".$cacheName.",".$QUERY_STRING.".HTML" ;
// ここで、ファイルの有効期限が切れているかどうかを確認するために、ファイルの時刻もテストする必要があります
//(でも、ここではやっていません。笑! 自分でやってください!)
?????if ( file_exists (???$filename) )??
???????{??
???????readfile ($filename)
???????return 1 ; ///??OK、HTML ページを送信します????
???????}
他に??
???????{
????if ( ! isset ($cache ) )??
?????????{
???????$fcontents = join ('', file ($url."?".$QUERY_STRING."&cache=t"));
?????????$fp = fopen ($filename , "w");
?????????fwrite ($fp, $fcontents??);
?????????fclose ($fp)
??????????return 0 ;???///??ファイルを実行します??
??????????}
???????}
}??
//次のコード行を PHP ファイルの先頭に置きます
//??if ( BZ_cache ("COMPLETE URL WITHOUT PARAMS" , "AN_IDENTIFIER" ) )???exit () ;??
//この URL は完全である必要があります。つまり、先頭に http:// が必要であることに注意してください。ただし、その後にパラメータはありません。
// インターネット上に例があります: http://azerclic.labynet.org/doc.PHP3
// 最初の行は ??
// if ( BZ_cache ("http://azerclic.labynet.org/doc.PHP3" , "doc" ) )???exit () ;??
// キャッシュされたファイルは http://azerclic.labynet.org/cache/ に表示されます
// それだけ??
//幸運を!
//WIN32 では問題ないと思います。LINUX では、一般に書き込み権限がないため、権限の問題を考慮する必要があります。