テンプレートキャッシュ機能

PHPTALは、テンプレートキャッシュ機能が用意されています。 タグ毎にキャッシュ期間が設定できます。

キャッシュを設定する

キャッシュを設定するには、phptal:cache を使用します。

<div phptal:cache="30m"> // 30分間キャッシュする
(省略)
</div>

キャッシュ期間は、d(日), h(時間), m(分), s(秒) のいずれかを用いて指定することができます。 また、div 等の各タグ毎にキャッシュ期間を変更できます。

URL 毎のキャッシュ

期間の後に、per url を付加することで、URL 毎のキャッシュが可能になります。

<div phptal:cache="2h per url"> // 2 時間キャッシュする。キャッシュデータは URL 毎に独立
(省略)
</div>

per url を付加しない場合、テンプレートを共有するファイル全てで、同一のキャッシュを用いて表示します。

ユーザー毎のキャッシュ

期間の後に、per user/id のような、ユーザー毎に異なるデータ条件を付加することで、ユーザー毎のキャッシュが可能になります。

<div phptal:cache="1d per user/id"> // 1 日間キャッシュする。キャッシュデータは user/id 毎に独立
(省略)
</div>

ユーザー毎に異なるデータをキャッシュしたい場合は、必ずユーザーID 等をキャッシュ条件にするようにしましょう。 そうしないと、別のユーザーに情報を表示してしまう可能性があります。


URL 毎キャッシュ、ユーザー毎キャッシュ等は便利ですが、使い方を間違えるとまずいので注意しましょう。

Copyright (C) 2003-2012. PHP で WEB 作成 All rights reserved.
  • よくある質問