快速业务通道

PEAR教程(二)--Pear的Cache介绍

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-25

前面介绍了pear的安装,今天开始介绍pear的几个知名的package之一,如果有不清楚的地方请站内搜索“PEAR教程”获取前面的教程!

今天我们要介绍的是PEAR的Cache_Lite包,做web的说到提速眼睛瞪大的程度绝不亚于男人见到绝色美女时眼睛所瞪大的程度,因此,我这里第一个要介绍的就是PEAR的Cache_lite包,利用这个package可以根据你的需要缓存网页的任何一个部分,从而大大的提高了页面的生成和载入速度!

首先去Pear的List Packages下载Cache_Lite这个安装包,写这个教程的时候,稳定的版本是1.7.2,所以我们就下载这个版本,下载下来后解压缩,然后将文件放置在PEAR的根目录下(文件目录如何组织,后面有介绍),然后我们去manual对应的章节看看如何使用。那些关于包的介绍你可以先看看,我们这里没有前戏,直接切入主题,下面是Cache_Lite::get()的例子。我们就从这个例子入手,我在例子中增加了中文的注释


require_once"Cache/Lite.php";//这里是相对PEAR的地址,找到刚才下载的包中Lite.php这个文件后你就应该知道如何部署这个文件夹了!
$options=array(
''cacheDir''=>''/tmp/'',//这里是Cache的路径,最好用绝对路径,我们的例子中将会有说明
''lifeTime''=>7200,//缓存的失效时间,秒为单位
''pearErrorMode''=>CACHE_LITE_ERROR_DIE//报错模式
);
$cache=newCache_Lite($options);//参数设置完之后建立缓存
if($data=$cache->get(''id_of_the_page'')){//如果id=id_of_the_page这个缓存存在的话,则直接将缓存数据echo出来
// Cache hit !
// Content is in $data
// (...)
}else{//缓存不存在,则生成缓存
// No valid cache found (you have to make and save the page)
// (...)
}

看了上面的这个例子,是不是发现很简单?其实缓存的关键之处不在于如何生成和删除缓存,而在于如何平衡缓存静止和动态的关系,如何在适当的时候重建缓存。下面我开始举例,让大家体会到缓存的好处!,请在tutor(我们教程中的例子对应的根目录)下建立文件cache,*nix操作系统请设置属性为0777,然后在tutor文件夹下建立cache.php,输入下面的代码

< ?php
require_once"config.php";
require_once"Cache/Lite.php";
//下面的代码是计算页面执行时间,和cache无关
functionget_microtime()
   {
       list($usec,$sec)=explode('' '',microtime());
       return((float)$usec+(float)$sec);
   }
$s= get_microtime();
//下面是缓存的设置
$options=array(
   ''cacheDir''=>  WEB_DIR."/cache/",
       //请在tutor(我们教程中的例子对应的根目录)
       //下建立文件cache,
       //*nix操作系统请设置属性为0777
   ''lifeTime''=>10,//10秒失效时间
   ''pearErrorMode''=> CACHE_LITE_ERROR_DIE
);
$cache=newCache_Lite($options);
$cache_id=''cache'';//id一定要唯一
//否则会和别人的cache出现冲突
if($data=$cache->get($cache_id)){
//data是获取数据的结果,如果缓存存在并且没有过期,
//直接取出数据
   echo$data;
 
}else{
   //否则我们建立缓存
 
   //下面我们故意用循环来耗时
       while($i<10000000)
               $i++ ;
   $data=''缓存建立的时间:''.date("Y-m-d H:i:s");
       $data.="<p>没

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号