PHP / JS时钟不显示用户的时区,并且在更改时不显示秒数

时间:2012-12-10 18:47:12

标签: php javascript

我有一个时钟,我想在我的网站上使用它,它工作得非常好,因为它显示时间但我仍然需要它做两件事:

  1. 我需要它来显示我的时区中的时间,即服务器的时区。
  2. 我需要时钟来保持实时。 (即,在他们改变时显示秒数)
  3. 代码:

    <script> 
    function displayTime() { 
      document.getElementById( "servertime" ).innerHTML = '<?=date("h:i:s A");?>'; 
    } 
    
    var serverTime = window.setInterval( "displayTime()", 1200 ); 
    </script> 
    

3 个答案:

答案 0 :(得分:2)

使用default-timezone-set设置您的时区。

要移动秒数,您必须使用小时,分钟,秒的JavaScript增量。

答案 1 :(得分:2)

尝试这样的事情:

var serverTime = new Date();

function displayTime(){
    serverTime.setSeconds(serverTime.getSeconds()+1);
    document.getElementById("servertime").innerHTML = serverTime.getHours()+":"+serverTime.getMinutes()+":"+serverTime.getSeconds();
}

window.onload=function(){
    setInterval(displayTime, 1000)
}

这将使用用户机器的时间。如果要设置某个时区,请在PHP配置文件中设置或在脚本开头设置,然后将值放在新的Date javascript函数中。类似的东西:

var serverTime = new Date('<?=date("m/d/Y H:i:s T", time())?>');

答案 2 :(得分:0)

这样的事情应该这样做

var startTime = (function () {
  var el = document.getElementById("servertime");
function displayTime() {
  var d = new Date();
      el.innerHTML = d.getHours() + ":" + d.getMinutes() + ":"+ d.getSeconds();
}
  window.setInterval(displayTime,300)
})()

JSBin

上的示例