PHP写的一个简单的cache示例
一个简单的cache示例(不过太简单了一些!)
?// 首先创建"cache"目录 ,用来写文件
function BZ_cache ($url,$cacheName)??
{
global $cache ;??
global $QUERY_STRING ;
// 这里你可以按自己的习惯命名??
$filename = "cache/".$cacheName.",".$QUERY_STRING.".HTML" ;
// 这里你还应该测试一下文件的时间,看是否过期
//(不过这里没做。呵呵!自己完成吧!)
?????if ( file_exists (???$filename) )??
????????{??
????????readfile ($filename) ;
???????return 1 ; ///??Ok i'v send the HTML page?????
????????}
else??
???????{
??????if ( ! isset ($cache ) )??
?????????{
??????????$fcontents = join ('', file ($url."?".$QUERY_STRING."&cache=t"));
??????????$fp = fopen ($filename , "w");
??????????fwrite ($fp, $fcontents??);
??????????fclose ( $fp) ;
?????????????return 0 ;???///??i'v to execute the file??
??????????}
???????}
}??
// 在你的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 () ;??
// 你会看到cached文件在 http://azerclic.labynet.org/cache/
// That's all??
//好运!
//我估计在WIN32下没问题,在LINUX下还要考虑权限问题的,因为一般都没有写权限