我正在寻找一种方法来对我的网站进行频率检查,并且当时间是20:00-21:00时显示流媒体频道,否则它将显示图像。我试图用php做到这一点,但这是错误的方式,因为该网站将无法阻止。
已更新
我也想每30秒做一次。
PHP
<?php
while(1){
$now = date('G',time());
$start = 20;
$end = 21;
if($now >= $start && $now <= $end){
echo '<script type="text/javascript">document.getElementById("liveTV_api").style.display="block"; document.getElementById("adtv").style.display="none";</script>';
}
else{
echo '<script type="text/javascript">document.getElementById("adtv").style.display="block"; document.getElementById("liveTV_api").style.display="none";</script>';
}
}
?>
答案 0 :(得分:0)
IIRC,PHP在脚本执行时间上有30秒(默认值)的限制,之后您的脚本将被中止,因此您的代码不太可能正常工作。
即使它确实如此,你的while(1)
在循环中没有延迟也是一种可怕的资源浪费。
就个人而言,如果我想检查那样的时间,我会使用HTML元标记每隔一秒左右重新加载页面<meta http-equiv="refresh" content="1">
然后检查PHP开始时的时间,什么都不做直到所需的时间到来。
[更新]对不起,我在工作&amp;无法访问PHP / HTML开发工具。我可以在大约12个小时内正确编码,但同时也可以这样:
<!DOCTYPE html>
<html lang="en">
<head>
<?php
if (not currently streaming video) // coding is left as an exercise to the reader ;-)
{
echo '<meta http-equiv="refresh" content="1">';
}
?>
</head>
<body>
<?php
$now = date('G',time());
$start = 20;
$end = 21;
if($now >= $start && $now <= $end){
echo '<script type="text/javascript">document.getElementById("liveTV_api").style.display="block"; document.getElementById("adtv").style.display="none";</script>';
// CodeMe: indicate that the video is streaming (left to you to decide how)
}
else{
echo '<script type="text/javascript">document.getElementById("adtv").style.display="block"; document.getElementById("liveTV_api").style.display="none";</script>';
}
?>
</body>