CakePHPでのキャッシュのクリア方法
調べていてなんとなくわかってきたのでメモ。
CakePHPのキャッシュは、キーを指定して、クリアすることが可能です。ですが、キャッシュの機構が用意したキーがどうなっているのかがよくわかりませんでした。というわけで、キーはどこに書かれているんだ?と調べてみたところ、下記の場所にありました
cake/libs/model/datasources/datasource.phpの395行目あたり
$key = ConnectionManager::getSourceName($this) . '_' . $object;
なので、たとえばpostsというテーブル(モデル)があれば、
Cache::delete('default_posts', '_cake_model_');
で削除できるはず。_cake_model_は、キャッシュ機構が指定しているディレクトリを示しています。なんとなくなんですが、ここの指定がなくても消えるような、消えないような...。
memcacheでキャッシュ指定していても、同じ方法で大丈夫でした。
書籍
- 作者: 安藤祐介,岸田健一郎,新原雅司
- 出版社/メーカー: 毎日コミュニケーションズ
- 発売日: 2009/04/08
- メディア: 単行本(ソフトカバー)
- 購入: 7人 クリック: 125回
- この商品を含むブログ (20件) を見る
買ってみました。