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随机生成唯一HASH值自定义函数

网上有很多种方法获取随机唯一的HASH值,但是大同小异: 1、先获取随机的唯一字符串 2、进行MD5或者sha1算HASH值 一个项目要用到hash值,就去网上找了找,却发现PHP有一个...

Opcache导致php-fpm崩溃nginx返回502

我这个博客为了提高运行效率在vps上装了opcache扩展,结果发现有个页面返回502,其他页面正常。 检查了php-fpm日志,发现是php-fpm子进程不知道为什么会崩溃,然后把op...

Memcache 在PHP中的使用技巧

add($key, $value, $expiry); $key: 唯一标识, 用于区分写入的数据 $value: 要写入的数据 $expiry: 过期时间, 默认为永远有效 用途: 将...

PHP中数组的三种排序方法分享

一、冒泡排序法 说明:找到最大的数,排列到最后面,然后继续找 例: 复制代码 代码如下: $arr = array(3,5,-1,0,2); for($i=0;$i<count($...

php自定义函数截取汉字长度

复制代码 代码如下: function msubstr($str,$start,$len) { $strlen=$start+$len; for($i=0;$i<$strlen;$...