lily 2007-8-1 22:27
一个简单的cache示例
<p>// 首先创建"cache"目录 ,用来写文件<br><br>function BZ_cache ($url,$cacheName) <br>{ <br>global $cache ; <br>global $QUERY_STRING ; <br>// 这里你可以按自己的习惯命名 <br>$filename = "cache/".$cacheName.",".$QUERY_STRING.".html" ; <br><br>// 这里你还应该测试一下文件的时间,看是否过期<br>//(不过这里没做。呵呵!自己完成吧!) <br> if ( file_exists ( $filename) ) <br> { <br> readfile ($filename) ; <br> return 1 ; /// Ok i'v send the html page <br> } <br>else <br> { <br> if ( ! isset ($cache ) ) <br> { <br> $fcontents = join ('', file ($url."?".$QUERY_STRING."&cache=t")); <br> $fp = fopen ($filename , "w"); <br> fwrite ($fp, $fcontents ); <br> fclose ( $fp) ; <br> return 0 ; /// i'v to execute the file <br> } <br> } <br>} <br>// 在你的<a href="http://www.phpchina.com/javascript:;" onClick="javascript:tagshow(event, 'PHP');" target="_self"><u><strong>PHP</strong></u></a>文件的最开始放入下面一行<a href="http://www.phpchina.com/javascript:;" onClick="javascript:tagshow(event, '%B4%FA%C2%EB');" target="_self"><u><strong>代码</strong></u></a> <br>// if ( BZ_cache ("COMPLETE URL WITHOUT PARAMS" , "AN_IDENTIFIER" ) ) exit () ; <br>//记住,这个URL是要完全的,即前面要有http://。但后面不要参数。<br><br>// 网上有一个例子:http://azerclic.labynet.org/doc.php3 <br>// 第一行是 <br>// if ( BZ_cache ("http://azerclic.labynet.org/doc.php3" , "doc" ) ) exit () ; <br>// 你会看到cached文件在 http://azerclic.labynet.org/cache/ <br>// That's all <br>//好运!<br>//我估计在WIN32下没问题,在LINUX下还要考虑权限问题的,因为一般都没有写权限。<div>