smarty中的cache_id问题

##########################################
function useCahe($cachPath="",$lifetime=0)
{
  global $tpl,$config;
  $tpl->caching = true; //设置缓存方式
  $tpl->cache_dir = $config['webroot'].'/cache/'.$cachPath;
  if($lifetime)
  $tpl->cache_lifetime = -1 ; //永久有效
  else
  $tpl->cache_lifetime = $config['cacheTime'] ; //设置缓存时间
}

useCahe("phone_netnum/",1);// useCahe 是用来设定缓存的开启和目录,刷新时间等。
$flag=md5($dpid.$dcid.$config["temp"].$_GET["id"]); //由于有变量,所以需要指定cache_id
if(!$tpl->is_cached("phone_netnum_con.htm",$flag))//判断是否被缓存
{
    
$strSQL = " SELECT AREANUM FROM  " . PHONE . "  WHERE NETNUM=' " . $strNetNum . " ' AND (AREANUM>=' " . $start . " ' AND AREANUM<=' " . $end . " ') " ;
    
$db -> query( $strSQL );
    
$arrRe   =   $db -> getRows();
    
    
$tpl   ->  assign( " config " , $config );
    
$tpl   ->  assign( " strNetNum " , $strNetNum );
    
$tpl   ->  assign( " arrRe " , $arrRe );
}
$tpl-> display("phone_netnum_con.htm",$flag);//*这里一定要带上$flag,找了两天的错误,终于顿悟
生成的缓存文件ef8446f35513a8d6aa2308357a268a7e^%%43^43F^43FF4FDF%%phone_netnum_con.htm
其中ef8446f35513a8d6aa2308357a268a7e是$flag,cache_id也在其中。

转载于:https://www.cnblogs.com/derrck/archive/2009/06/04/1495942.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值