php - 如何获得准确的服务器时间

问题描述 投票:0回答:1

我通过crontab每隔30分钟在我的Ubuntu服务器上运行一个脚本。这个脚本的内容并不重要,但是我想通知我的服务器用户关于准确的时间,什么时候会触发脚本(我的网页就像抽奖一样每30分钟抽奖一次)

我尝试了以下内容:PHP

$min = date('i');
$sec = date('s');
if (($min>=30)&&($sec==0)) {
$tt=((60-($min))*60)+$sec;  
}
if (($min>=30)&&($sec>0)) {
$tt=((60-($min+1))*60)+$sec;    
}
if (($min<30)&&($sec>0)) {
$tt=((30-($min+1))*60)+$sec;    
}
if (($min<30)&&($sec==0)) {
$tt=((30-($min)*60))+$sec;  
}

JS:

<script>
var seconds = <?php echo $tt;?>;
function secondPassed() {
    var minutes = Math.round((seconds - 30)/60);
    var remainingSeconds = seconds % 60;
    if (remainingSeconds < 10) {
        remainingSeconds = "0" + remainingSeconds;  
    }
    document.getElementById('countdown').innerHTML = minutes + ":" + remainingSeconds;
    if (seconds == 0) {
        clearInterval(countdownTimer);

    } else {
        seconds--;
    }
}

var countdownTimer = setInterval('secondPassed()', 1000);
</script> 

HTML:

..

<span id="countdown" class="timer"></span>

..

问题是,当我用F5刷新页面时,它会显示非常不同的时间(+/- 10-20秒,或更多差异)

任何想法如何解决这个问题?如何从服务器获取非常精确的时间数据?我用Google搜索,但我无法找到解决此问题的方法。

谢谢你的建议

javascript php time server
1个回答
0
投票

我的问题解决了,它有可能..在主帖上我有一些PHP部分的错误..我的工作PHP解决$ tt(时间留到下半小时间隔)

PHP

unset($tt);unset($min);unset($sec);
$min = date('i');
$sec = date('s');

$tt=3600-($min*60+$sec);
if ($tt>=1800) {$tt=$tt-1800;}
© www.soinside.com 2019 - 2024. All rights reserved.