当前位置: 首页 > 图文教程 > 网络编程 > PHP > 使用PHP程序加速探索之缓存输出
内容缓存输出 PEAR cache
接下来我们开始探索更常用的缓存技术,这也是本文的重点部份。首先我们使用PEAR中的cache包。PEAR可以将内容缓存于文件,数据库或者内存中,我们以文件为例。
下面是一个没有使用缓存的PHP小程序:
pear_content_cache1.php
| <?php echo "这是内容。<P>"; echo "当前时间是" . date('M-d-Y H:i:s A', time()) . "<BR>"; ?> |
| <?php require_once 'Cache/Output.php'; //设置缓存目录,必须是可写的 $cacheDir = './pear_cache'; $cache = new Cache_Output('file',array('cache_dir' => $cacheDir)); //如果nocache变量为空,使用缓存中的内容 //如果想获得最新的内容,就要赋值给nocache变量 if (empty($_REQUEST['nocache'])) { // 建立一个独一的cache标识 // 请求+Cookie信息 $cache_id = $cache->generateID(array('url' => $_REQUEST,'post' =>$_POST,'cookies' => $HTTP_COOKIE_VARS)); } else { //想获得最新的内容,ID为空 $cache_id = null; } //看cache ID对应的缓存内容是否可用 if ($content = $cache->start($cache_id)) { //缓存已存在,直接输出,并结束脚本 echo $content; exit(); } // 缓存中不存在该内容,生成新内容并写入缓存 echo "这是内容。<P>"; echo "当前时间是" . date('M-d-Y H:i:s A', time()) . "<BR>"; // 把内容写入缓存 echo $cache->end(); ?> |
| require_once 'Cache/Output.php'; |
| $cacheDir = './pear_cache'; |
| $cache = new Cache_Output('file',array('cache_dir' => $cacheDir)); |
| $cache_id = $cache->generateID(array('url' => $_REQUEST,'post' =>$_POST,'cookies' => $HTTP_COOKIE_VARS)); |
| if ($content = $cache->start($cache_id)) { echo $content; exit(); } |
评论 (0) All