2011-08-13 3 views
3

PHPでJSONファイルから変数をキャッシュしようとしています。良いチュートリアルを知っている人や、例を提供できる人はいますか?変数にPHPでの変数キャッシュの方法

file_put_contents('cache.txt', json_encode($variable)); 

読むキャッシュ:

+1

のRedisなど、永続キャッシュをこれは、APCのキャッシュを使用していますが、memcachedのと同様に仕事ができる(間に保存されますページの読み込み中)、またはページの読み込み中のみ? – Ben

+0

リモートサーバーへの複数のJSONデータ要求。 – lockdown

答えて

4

保存変数は、キャッシュファイルへ

$variable = json_decode(file_get_contents('cache.txt')); 
+0

このDanの前に、ファイルを書き込むための領域も作成する必要がありますか?リモートサーバーに変更があった場合、変数に有効期限を設定する良い方法を知っていますか? – lockdown

+0

あなたの家の角を掃除してそこにハードドライブを置くのと同じように? ;)いいえ、それはいいです、コンピュータは、PHPスクリプトと同じディレクトリにファイルを保存します。 'time()'(現在の時刻)と 'filemtime( 'cache.txt')'(ファイルの変更時刻)を比較することで、期限切れを行うことができます。 –

+0

よろしくお願いいたします。私はそれを撃つだろう。 – lockdown

1

Memcachedのが最善の策です。シリアライズ可能なデータは非常に高速なキャッシュに保存されます。それは雷迅速で、単にサーバにtxtファイルを保存するよりも、それは良くなり、他の多くの機能を備えてい

http://php.net/manual/en/memcache.examples-overview.php

の位置は:チュートリアルを見つけることができます。

$memcache->set('key', $jsonstring, false, 10) 

$get_result = $memcache->get('key'); 
1

シンプルなアプローチがある:

function getMyJson() 
{ 
    $data = apc_fetch('my_json', $wasCached); 
    if ($wasCached) { 
     return $data; 
    } 
    $data = json_decode(file_get_contents('/path/to/data.json')); 
    apc_store('my_json', $data); 
    return $data; 
} 

関連する問題