所以我有一个数组
$super = 数组(8,9,10,11,12,20,21);
我想在我的网站上显示一个小时的第一个值
一小时后显示第二个等等。
数组到达末尾“21”后,它会重置并开始显示第一个值
回声$超级[0]
等待一小时 $super 更改为
$超级[1]下一小时
$超级[2]等等。
后
$super == $super[21]重启
$super 到 $super[0]
我可以使用 next()、current()、reset() 函数,但我不知道如何延迟循环它们。
享受服务器端静态版本:
$super = array(8,9,10,11,12,20,21); // Array can be extended
$h = date('H') ; //Current hour. Server time
$start_day_element = 0 ; //Offset, from what element days start.
echo $super[($h + $start_day_element)%count($super)] ;
但是当然,必须刷新页面才能看到更新的值。
很尴尬
用户 javascript settimeout 使用 ajax 执行 js 函数
eg:setTimeout("somefun();", 5000);
其中 5000 是时间延迟
function somefun(){
$("#msgSpan").load("site.com/somepage.php");
}
其中“#msgSpan”是显示数组值的元素的 ID
在 somepage.php 中实现相应的返回数组值的逻辑
您可以使用 php 会话来记录当前数组索引,并为每个下一个请求增加数组索引