smarty 缓存控制前的页面静态化原理

yipeiwu_com6年前PHP代码库
可在display中进行设置

$smarty->display("demo.tpl",$_SERVER[REQUEST_URI])来实现一个模版有多个缓存。

既然文件已经有缓存了,我们就可以走缓存文件了,不用循环的执行连接数据库,进行查询了。用smatry中的一个函数进行判断

$smarty->iscached(demo.tpl"",",$_SERVER[REQUEST_URI])默认值为”true“ 这里的模版要和display的一样。

在smarty3和在smarty2中是有区别的

$smarty->is_cached(demo.tpl"",",$_SERVER[REQUEST_URI]) smarty2

$smarty->iscached(demo.tpl"",",$_SERVER[REQUEST_UR]I) smarty3

但是在模版中有部分是不需要进行缓存的例如:用户的登录,和文章的评论部分就不需要缓存的,那么我们这样解决

1,在php文件里,如果不需要缓存的数据 要放到iscached判断之外。

2.在模版中如果不需要缓存的部分就放到<{nocache}>........<{/nocache}>之间。

相关文章

PHP绕过open_basedir限制操作文件的方法

PHP绕过open_basedir限制操作文件的方法

0x00 预备知识 关于open_basedir open_basedir是php.ini中的一个配置选项 它可将用户访问文件的活动范围限制在指定的区域, 假设open_basedir...

自制PHP框架之设计模式

为什么要使用设计模式? 设计模式,我的理解是为了达到“可复用”这个目标,而设计的一套相互协作的类。 感兴趣的读者可以阅读《Design Patterns: Elements of Reu...

探讨:如何通过stats命令分析Memcached的内部状态

Memcached有个stats命令,通过它可以查看Memcached服务的许多状态信息。使用方法如下:先在命令行直接输入telnet 主机名端口号,连接到memcached服务器,然后...

PHP一些常用的正则表达式字符的一些转换

匹配双字节字符(包括汉字在内): [^\x00-\xff]    应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)  String.pr...

php 中self,this的区别和操作方法实例分析

本文实例讲述了php 中self,this的区别和操作方法。分享给大家供大家参考,具体如下: 面向对象编程(OOP,Object OrientedProgramming)现已经成为编程人...