0

如何在 yii 框架中清除缓存并在给定时间内自动重新加载页面?例如,在接下来的 5 小时内,页面的内容应该在清除缓存之前更改,然后重新加载页面

$time = date('h:i:s A', strtotime("+5 hours"));

然后在接下来的 5 小时内,它会再次清除缓存并重新加载同一页面并显示新内容

4

1 回答 1

0

如果我很好理解这个问题。

在你的 Yii 视图中,在 javascript 中添加类似这样的内容

<script>
 setTimeout(function(){ window.location = "<URL>";}, 5*60*1000);
</script>

这是 5 分钟后的重定向。如果你想要 5 小时,只需使用

300*60*1000

并将 URL 指向您想要的 www.example.com/controller/action。

如果您仍然想在 php 中执行此操作,我相信您可以将此行添加到您的视图中。

<?php header("Refresh: 18000; URL=http://www.example.com/controller/action"); ?>

这里 18000 以秒为单位。

希望能帮助到你。

但是如果您只更新视图的一小部分.. 为什么不创建一个计时器来向您想要更新数据的控制器/动作发出 ajax 请求?Yii 已经为这种需求做好了准备。

于 2012-11-06T00:33:57.927 回答