API利用などで通信回数を減らしたい場合などに利用すると便利。

*APCの利用 [#s95317ad]
 $url = 'http://example.com/api/';  
[[APC:http://jp.php.net/apc]]

 $url = 'http://example.com/api/';
 
 $xml = apc_fetch($url);    // URLをキーとし、キャッシュから保存されてるXMLを取得
 
 if ($xml === FALSE) {      // 無かった場合は、  
 /** キャッシュが無い場合 **/
 if ($xml === FALSE) {
     $xml = file_get_contents($url);  // 新たにAPIからXMLを取得
     apc_store($url, $xml, 60);       // そのXMLを、URLをキーとして保存(ここでは賞味期限60秒)  
 }  
     apc_store($url, $xml, 60);       // そのXMLを、URLをキーとして60秒保存
 }

**PEAR::Cache_Liteの利用 [#y5bf60e4]
[[Cache_Lite:http://pear.php.net/manual/ja/package.caching.cache-lite.php]]

 require_once('Cache/Lite.php');  
 
 var_dump($xml);                      // 取得結果
 $url = 'http://example.com/api/';
 
 $options = array(
       'cacheDir' => '/tmp/'
     , 'lifeTime' => 60      // 60秒保存
 );
 $cache = new Cache_Lite($options);  
 $xml = $cache->get($key);   // URLをキーとし、キャッシュから保存されてるXMLを取得
 
 /** キャッシュが無い場合 **/
 if ($xml === FALSE) {
     $xml = file_get_contents($url);  // 新たにAPIからXMLを取得
     $cache->save($xml, $key);        // そのXMLを、URLをキーとして保存
 }



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS