程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 再次研究下cache_lite

再次研究下cache_lite

編輯:關於PHP編程

晚上詳細的看了下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>";
}
?>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved