0

彼が書いたキャッシュ ライブラリへのリンクは次のとおりです: https://github.com/philsturgeon/codeigniter-cache

とにかく、彼のドキュメントは絶対に..あいまいで、まったく役に立ちません。私はそれが自明であることを知っています..ある程度まで。

$this->cache->model('blog_m', 'getPosts', array($category_id, 'live'), 120); // keep for 2 minutes 

3番目のパラメータは何ですか? そして、それがキャッシュを作成するのか、それともキャッシュファイルを作成するのか:

$this->cache->write($data, 'cached-name');

もしそうなら、$data は正確に何の値を保持していると思われますか? 全体的なクエリ orrr...?? キャッシュファイルの作成方法について誰かが説明できる場合..基本的に、一連のニュース投稿を選択するクエリをキャッシュしたい..新しい新しい投稿が作成されるたびに、そのキャッシュを削除して再キャッシュする新しいニュース投稿を表示します..

4

1 に答える 1

0

ドキュメントはかなり明確なようです。とにかく、私はそれをより良い言葉で説明しようとします:

// cached model call
$this->cache->model('blog_m', 'getPosts', array($category_id, 'live'), 120); // keep for 2 minutes

getPostsこれにより、モデルのメソッドが呼び出されblog_m、結果が 120 秒間キャッシュされます。次の 2 分以内に同じ呼び出しを再度行うと、キャッシュされた結果が返されます。それ以外の場合は、データベースからデータを取得してキャッシュを更新します。非常に頻繁に呼び出すモデルのメソッドに適しています。

キャッシュからデータを手動で追加および取得する場合は、次を使用します。

// cached array or object
$this->cache->write($data, 'cached-name');
$data = $this->cache->get('cached-name');

$dataキャッシュしたいものは何でも保持します。たとえば、ユーザーの電子メールをキャッシュする場合は、次のようにキャッシュしてフェッチします。

$email = 'foobar@example.com';
$this->cache->write($email, 'user-email');
// to fetch
$user_email = $this->cache->get('user-email');
于 2013-02-28T00:47:29.280 に答える