再次研究下cache_lite

(编辑:jimmy 日期: 2024/9/24 浏览:2)

晚上详细的看了下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', 12, 45);

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>";
}
?>
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?