simplate (0.4.2) | 2010-01-13 01:02 |
まずはじめにキャッシュを有効にします。これは、$caching = 1 (あるいは 2) を設定するだけです。
いつものようにテンプレートから出力内容をパースするために display('index.tpl') を呼び出しますが、キャッシュを有効にした事でその出力内容をコピーしたファイルが $cache_dir 内に保存されます。次回 display('index.tpl') が呼ばれる際には、再びテンプレートをパースする代わりにキャッシュされたコピーが使用されます。
各々のキャッシュされたページは、$cache_lifetime 生存時間が限られています。デフォルト値は 3600 秒です。期限が過ぎた後、キャッシュは再生成されます。$caching = 2 を設定する事によって、個々のキャッシュに自分自身の生存時間を与える事が可能です。詳細は、$cache_lifetime を参照して下さい
- <?php
- $simplate = new Simplate();
- $simplate->caching = 2; // 生存時間はキャッシュごと
- // index.tpl に 5 分の cache_lifetime をセットします
- $simplate->cache_lifetime = 300;
- $simplate->display('index.tpl');
- // home.tpl に 1 時間の cache_lifetime をセットします
- $simplate->cache_lifetime = 3600;
- $simplate->display('home.tpl');
- // 注: $caching = 2 の時、次のような $cache_lifetime の設定は動作しません。
- // home.tpl のキャッシュの生存時間は既に 1 時間にセットされているので、
- // もはや、$cache_lifetime の値が尊重される事はありません。
- // home.tpl のキャッシュは、今までどおり 1 時間後に満期になるでしょう。
- $simplate->cache_lifetime = 30; // 30 seconds
- $simplate->display('home.tpl');
- ?>
$compile_check が有効の時、キャッシュファイルに入り組んだすべてのテンプレートファイルと設定ファイルは 修正されたかどうかをチェックされます。もしキャッシュが生成されてからいくつかのファイルが修正されていた場合、キャッシュは即座に再生成されます。これは最適なパフォーマンスのためには僅かなオーバーヘッドになるので、$compile_check は FALSE にして下さい。
$force_compile が有効の場合、キャッシュファイルは常に再生成されます。これは事実上、キャッシュ機能を無効にします。通常、$force_compile は [ デバッグ] 目的でのみ使用し、キャッシュは $caching = 0 にセットして無効にするのがさらに効率の良い方法です。
clear_cache() 関数によって、個々のキャッシュファイルをクリアする事ができます。