Heim >Backend-Entwicklung >PHP-Tutorial >Ausführliche Erläuterung der Anwendung der PHP-Datei-Caching-Smarty-Vorlage
1. Cache verwenden
Um den Cache von smarty zu aktivieren, setzen Sie einfach den Cache auf „true“ und geben Sie cache_dir an.
Verwenden Sie „cache_lefetime“, um die Cache-Überlebenszeit (Einheit) anzugeben beträgt Sekunden
Um mehrere verschiedene Caches für dieselbe Seite zu generieren, fügen Sie den zweiten Parameter „cache_id“ zu „display“ oder „fetch“ hinzu, z $_GETs 2. Cache leeren
$smarty->display('index.tpl',$my_cache_id);
3. Benutzerdefinierte Caching-Methode verwenden
Cache_handler_func so einstellen, dass die benutzerdefinierte
clear_all_cache();//清除所有缓存 clear_cache('index.tpl');//清除index.tpl的缓存 clear_cache('index.tpl',cache_id);//清除指定id的缓存verwendet wird Behandelt den Cache
wie zum Beispiel:
Diese Funktion basiert im Allgemeinen auf 椐$action, um den aktuellen Betrieb des Caches zu bestimmen:
$smarty->cache_handler_func = "myCache"; function myCache($action, &$smarty_obj, &$cache_content, $tpl_file=null, $cache_id=null, $compile_id=null){ }Im Allgemeinen
md5
($tpl_file.$cache_id.$compile_id) als eindeutige Cache_ID verwenden
switch($action){ case "read"://读取缓存内容 case "write"://写入缓存 case "clear"://清空 }
Viertens, Teilweise drehen Aus dem Cache
Um den Cache in bestimmten Bereichen (nur im erforderlichen Cache) ungültig zu machen, gibt es mehrere Methoden:
Einfügen:
Definieren Sie die Verarbeitung, die von einer Funktion zum Einfügen von Tags verwendet werden soll , das Format des Funktionsnamens ist: insert_xx(array $params,
object
register_block:
geschrieben als Block-Plug-in:
1) Definieren Sie eine Plug-in-Funktion: block.cacheless.php und platzieren Sie sie im Plugins-Verzeichnis von smarty
Der Inhalt von block.cacheless.php lautet wie folgt:
定义一个block:smarty_block_name($params,$content, &$smarty){return $content;} //name表示区域名 注册block:$smarty->register_block('name', 'smarty_block_name', false); //第三参数false表示该区域不被缓存 模板写法:{name}内容{/name}
2 ) Programme und Vorlagen schreiben
Beispielprogramm: testCacheLess.php
<?php function smarty_block_cacheless($param, $content, &$smarty) { return $content; } ?>Verwendete Vorlage: Cache.tpl
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Anwendung der PHP-Datei-Caching-Smarty-Vorlage. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!