首页 > Web开发 > 详细

再次研究下cache_lite

时间:2016-02-09 06:42:58      阅读:170      评论:0      收藏:0      [点我收藏+]
晚上详细的看了下cache_lite,功能比我想象中的强大的多。当然目前我还没有发现它是否支持直接保存PHP代码来缓存的功能,不过我想应该是可以扩展实现的。

 这里有几个例子:

<?
require_once(‘../libs/cache/Lite.php‘);

$options = array(
    
‘cacheDir‘ => ‘../cache/test/‘,
    
‘fileLocking‘ =>true,
    
‘writeControl‘=>true,
    
‘readControl‘=>false,
    
‘fileNameProtection‘=>false,//关闭文件名安全模式。cache id和组名将直接应用到 cache文件的文件名,所以要小心使用特殊字符.
    
‘automaticSerialization‘=>false,//关闭自动序列
    
‘hashedDirectoryLevel‘=>2,//设置两级缓存路径
    
‘lifeTime‘ => 60
);
$Cache = new Cache_Lite($options);
$id=‘test‘;
if(
$data=$Cache->get($id,‘test‘)){
   echo 
$data;
}else{
   
$data=time();
   
$Cache->save($data);
   echo 
$data;
}
?>


  对输出进行缓存

<?
require_once(‘../libs/cache/Lite.php‘);
require_once(
‘../libs/cache/Lite/output.php‘);
$options = array(
    
‘cacheDir‘ => ‘../cache/test/‘,
    
‘lifeTime‘ => 60,
    
‘pearErrorMode‘ => CACHE_LITE_ERROR_DIE
);
$cache =new Cache_Lite_Output($options);

if (!(
$cache->start(‘id_of_the_page‘))) { 
    
// 没有发现Cache !
    
echo ‘test time:‘.time().‘<br>test<br>‘;
    
$cache->end(); // 缓冲的输出现在被存储到一个cache文件中 
}

?>


对函数进行缓存

<?
require_once(‘../libs/cache/Lite.php‘);
require_once(
‘../libs/cache/Lite/Function.php‘);
$options = array(
    
‘cacheDir‘ => ‘../cache/test/‘,
    
‘lifeTime‘ => 3600,
    
‘pearErrorMode‘ => CACHE_LITE_ERROR_DIE
);
$cache = new Cache_Lite_Function($options);

$cache->call(‘function_to_bench‘1245);

function 
function_to_bench($arg1$arg2
{
    echo 
"This is the output of the function function_to_bench($arg1, $arg2) !<br>";
    return 
"This is the result of the function function_to_bench($arg1, $arg2) !<br>";
}
?>

再次研究下cache_lite

原文:http://www.jb51.net/article/7000.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!