>  기사  >  php教程  >  PHP写的一个简单的cache示例

PHP写的一个简单的cache示例

WBOY
WBOY원래의
2016-06-21 08:57:07832검색

一个简单的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下还要考虑权限问题的,因为一般都没有写权限



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.