1. Smarty キャッシュ設定:
$smarty->cache-dir="ディレクトリ名"; //キャッシュディレクトリ名を作成します
$smarty->caching=true; //キャッシュを有効にします。無効
$smarty->cache_lifetime=60; //キャッシュ時間、単位は秒
2、Smarty キャッシュの使用とクリア
$marty->display("cache.tpl",cache_id); //キャッシュを作成するID 付き
$marty->clear_all_cache(); //すべてのキャッシュをクリア
$marty->clear_cache("index.php"); //index.php のキャッシュをクリアします
$marty->clear_cache(" Index.php',cache_id); //index.php の指定された ID のキャッシュをクリアします
3、Smarty のローカル キャッシュ
最初のもの: insert_ 関数はデフォルトではキャッシュされず、この属性は変更できません
使用法:例
index。PHP では、
function insert_get_time(){
return date("Y-m-d H:m:s")
}
index.html,
{insert name="get_time"}
2 番目:smarty_block を定義します。 block :smarty_block_name($params,$content, &$smarty){return $content;} //name はエリア名を表します
Register block:$smarty->register_block('name', 'smarty_block_name', false) / /いいえ。3 つのパラメーター false は、領域がキャッシュされないことを意味します。
テンプレートの書き込みメソッド: {name}content{/name}
ブロック プラグインとして記述:
1) プラグイン関数を定義します: block.cacheless。 php を開き、smarty のプラグイン ディレクトリ
block に配置します。cacheless.php の内容は次のとおりです。 >
2) プログラムとテンプレートを作成します
サンプル プログラム: testCacheLess .php
コードをコピーします:
include('Smarty.class.php'); $smarty = 新しい Smarty; $smarty->cache_lifetime = 6; 使用されたテンプレート:cache.tpl
{cacheless}
キャッシュなし: {$smarty.now}
{/cacheless}
4 カスタム キャッシュ
カスタム関数を使用するように、cache_handler_func を設定します。キャッシュを処理します
例:
$smarty->cache_handler_func = " myCache"
function myCache($action, &$smarty_obj, &$cache_content, $tpl_file=null, $cache_id=null, $compile_id=null){
}