caching=true; //Enable caching. If it is false, the cache will be invalid. $smarty->cache_lifetime=60; //Cache time, unit is 2 seconds. The usage and clearing of Smarty cache is as follows: $marty-&g"/> caching=true; //Enable caching. If it is false, the cache will be invalid. $smarty->cache_lifetime=60; //Cache time, unit is 2 seconds. The usage and clearing of Smarty cache is as follows: $marty-&g">

Home >Backend Development >PHP Tutorial >Cache application in eset smart security php smarty template engine

Cache application in eset smart security php smarty template engine

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-07-29 08:41:201238browse

1. Smarty cache configuration:

Copy the code The code is as follows:


$smarty->cache-dir="directory name"; //Create cache directory name
$smarty->caching=true ; //Enable caching. When it is false, the cache will be invalid.
$smarty->cache_lifetime=60; //Cache time, in seconds


2, Smarty cache usage and clearing

Copy code Code As follows:


$marty->display("cache.tpl",cache_id); //Create a cache with ID
$marty->clear_all_cache(); //Clear all caches
$marty->clear_cache ("index.php"); //Clear the cache in index.php
$marty->clear_cache("index.php',cache_id); //Clear the cache with the specified ID in index.php


3, Smarty's local cache
The first one: The insert_ function is not cached by default. This attribute cannot be modified.
Usage: Example
index.php,
function insert_get_time(){
return date("Y-m-d H:m:s ");
}
index.html,
{insert name="get_time"}
Second: smarty_block
Define a block: smarty_block_name($params,$content, &$smarty){return $content;} / /name represents the area name
Register block:$smarty->register_block('name', 'smarty_block_name', false); //The third parameter false indicates that the area is not cached
Template writing method: {name}content{/name }
Written as a block plug-in:
1) Define a plug-in function: block.cacheless.php and place it in smarty’s plugins directory
The content of block.cacheless.php is as follows:
function smarty_block_cacheless($param, $ content, &$smarty) {
return $content;
}
?>
2) Write programs and templates
Sample program: testCacheLess.php
include('Smarty.class.php');
$smarty = new Smarty;
$smarty->caching=true;
$smarty->cache_lifetime = 6;
$smarty->display('cache.tpl');
?>
Template used: cache.tpl
Cached: {$smarty.now}

{cacheless}
Not cached: {$smarty.now}
{/cacheless}
4 Custom cache
Set cache_handler_func to use custom Function handling cache
For example:
$smarty->cache_handler_func = "myCache";
function myCache($action, &$smarty_obj, &$cache_content, $tpl_file=null, $cache_id=null, $compile_id=null){
}
This function is generally based on $action to determine the current operation of the cache:
switch($action){
case "read"://read cache content
case "write"://write cache
case " clear"://clear
}
Generally use md5 ($tpl_file.$cache_id.$compile_id) as the only cache_id
If necessary, you can use gzcompress and gzuncompress to compress and decompress

The above introduces the caching application in the eset smart security php smarty template engine, including the content of eset smart security. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn