PHPプログラムに関する各種メモ書き

PEAR Cache_Lite を使ってみる

Cacheクラス PEAR Cache_Lite を使ってみる。

インストールはコマンド一発。簡単。

pear install Cache_Lite

composerコマンドでも入れられます

composer require pear/cache_lite 

レンタルサーバの場合は http://pear.php.net/package/Cache_Lite/download からダウンロード

ソースは下記のような感じ

// クラス読み込み
require_once('Cache/Lite.php');
// IDのセット
$cache_id = '123456';
// オプション
$options = array(
    'cacheDir'               => '/tmp/',
    'caching'                => 'true', // キャッシュを有効に
    'automaticSerialization' => 'true', // 配列を保存可能に
    'lifeTime'               => 1800,   // 60*30(生存時間:30分)
    'automaticCleaningFactor' => 200,   // 自動で古いファイルを削除(1/200の確率で実行)
    'hashedDirectoryLevel'    => 1,     // ディレクトリ階層の深さ(高速になる)
);
// オブジェクトのnew
$cache=new Cache_Lite($options); 
// キャッシュデータがあるかどうかの判別
if( $cache_data=$cache->get($cache_id) ){
    $buff = $cache_data;
}
else{
    // キャッシュデータがない。DBからデータを読み込む処理
    // データ取得処理ここから
    // ……………………… $read_data にデータを入れておく
    // データ取得処理ここまで
    $buff = $read_data;
    $cache->save($buff, $cache_id);
}
print_r($buff);

簡単、便利。 古くなったキャッシュファイルも自動で削除してくれるので余計なコーディングをしなくてすみます。

オプションについてのマニュアル:http://pear.plus-server.net/package.caching.cache-lite.cache-lite.cache-lite.html

マニュアル:http://pear.php.net/manual/en/package.caching.cache-lite.php

他のおすすめキャッシュクラスとしては phpfastcache : https://packagist.org/packages/phpfastcache/phpfastcache
がおすすめです


関連エントリー

No.334
03/08 20:29

edit

高速化
PEAR