ホームページ  >  記事  >  バックエンド開発  >  Thinkphp3.2中怎样实现局部不缓存?

Thinkphp3.2中怎样实现局部不缓存?

WBOY
WBOYオリジナル
2016-06-06 20:17:161185ブラウズ

开启了静态缓存后,没找到局部不缓存的方法。
模板中好像没有的标签。
请问各位是怎样处理的?

我的需要是:页面中大部分内容是一天更新一次的,所以我希望实现页面的静态缓存。
但其中有些地方不能使用缓存,比如用户登录情况,文件下面的评论数,这些是需要根据数据库的变化随时更新的。

楼下回答中提到用ajax,这当然可以说实现未刷新的时候页面的更新和数据库的更新,但页面刷新后如果我读的是缓存,那刚才的更新就失效了。
像smarty模板中就可以通过nocache标签让某些局部不使用缓存,我想问的是在thinkphp中应该怎样来实现 ?

回复内容:

开启了静态缓存后,没找到局部不缓存的方法。
模板中好像没有的标签。
请问各位是怎样处理的?

我的需要是:页面中大部分内容是一天更新一次的,所以我希望实现页面的静态缓存。
但其中有些地方不能使用缓存,比如用户登录情况,文件下面的评论数,这些是需要根据数据库的变化随时更新的。

楼下回答中提到用ajax,这当然可以说实现未刷新的时候页面的更新和数据库的更新,但页面刷新后如果我读的是缓存,那刚才的更新就失效了。
像smarty模板中就可以通过nocache标签让某些局部不使用缓存,我想问的是在thinkphp中应该怎样来实现 ?

1.ajax局部刷新DIV 那么这个div不就是不能缓存了吗? 不太明白你的意思
2.define('APP_DEBUG',True); 开启debug就不缓存了

<code><script type="text/javascript">  

var xmlhttp;  

function startrefresh(){  

xmlhttp=new XMLHttpRequest();  

xmlhttp.open("POST,"ss.jsp",true);  

xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");  

//xmlhttp.send("name=wk");  --需要传输参数时增加

xmlhttp.onreadystatechange = function(){  

   if(xmlhttp.readyState == 4)  

        if(xmlhttp.status == 200)  

            document.getElementById("mydvi").innerHTML=xmlhttp.responseText;  

 }  

 }  

</script></code>

Thinkphp 并没有所谓的局部不缓存,只有通过ajax实现了

Js + Ajax 实现局部刷新

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。