Heim >Backend-Entwicklung >PHP-Tutorial >Thinkphp3.2中怎样实现局部不缓存?

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

WBOY
WBOYOriginal
2016-06-06 20:17:161205Durchsuche

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

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

楼下回答中提到用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 实现局部刷新

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn