PHP 的本地檔案快取處理類 非常高效

2021-06-14 07:13:04 字數 1735 閱讀 7342

為了相容伺服器上沒有安裝memcache的記憶體快取,專門開發了乙個基於php5環境的,高效本地檔案快取類。

支援快取失效時間的處理,並且非常節省記憶體。支援3個操作set(), get(),del(),詳細使用方式請見備註中的example

<?php

/** * php檔案快取類 filecache

* @author jerryli([email protected])

* @version v0.20130513

* @package

* @example

** $ofc = new cfilecache('./tmp/'); //建立檔案快取類

* $skey = 'ab_123'; //快取鍵值

* $data = $ofc->get($skey); //取得快取

* if(is_null($data))

*   $ofc->set($skey, array('name'=>'ttt', 'datetime'=>date('y-m-d h:i:s')), 10); //快取不存在建立快取

* print_r($data);

*

*/

final class cfilecache

/*** 讀取快取

* 返回: 快取內容,字串或陣列;快取為空或過期返回null

* @param string $skey 快取鍵值(無需做md5())

* @return string | null

* @access public

*/public function get($skey)

else

}} /**

* 寫入快取

* * @param string $skey 快取鍵值

* @param mixed $mval 需要儲存的物件

* @param int $iexpire 失效時間

* @return bool

* @access public

*/public function set($skey, $mval, $iexpire=null)

/*** 刪除指定的快取鍵值

* * @param string $skey 快取鍵值

* @return bool

*/public function del($skey) }

/*** 獲取快取檔案全路徑

* 返回: 快取檔案全路徑

* $skey的值會被轉換成md5(),並分解為3級目錄進行訪問

* @param string $skey 快取鍵

* @return string

* @access protected

*/private static function getfilename($skey)

. $key_md5;

$afilename = $key_md5 . $key_md5;

$afilename = $key_md5 . $key_md5;

$afilename = $key_md5;

return implode('/', $afilename);

} /**

* 建立目錄

* * @param string $sdir

* @return bool

*/private static function is_mkdir($sdir='') }

?>

php檔案快取類

檔案快取類 class infobird cache file 設定快取基礎目錄 param string basepath return void throw exception public function setbasepath basepath this basepath basepath...

php 檔案快取類

1 檔案快取類23 class filecache 14 15 1617 設定快取 18public function set key,val,lefttime null 2829 得到快取 30public function get key 38return null 39 4041 判斷檔案是否...

PHP程式快取之檔案快取處理方式

php程式快取之檔案快取處理方式 在開發程式過程中,快取的設定大大提公升程式效率,減小資料庫負載。基本配置快取和常規配置快取 基本配置快取在專案開發中類似這樣子的格式 檔案 config.php cfg database mysql cfg pconnect 0 cfg db host localh...