2011-06-08 70 views
4

我有一种情况,我希望服务器时间显示在网页上。 目前我保持简单,只是这样做设置Javascript时间和php服务器时间?

<?php 
$CTIME=date ("g:i a"); 
?> 

这工作great-除了我宁愿它,如果它本身,而无需刷新页面更新。我在想也许有一种方法可以用php脚本设置javascript时间函数 - 但我不知道如何才能做到这一点。

也许我在想这个错误......也许有另一个解决方案,我没有想到,任何想法?

回答

0

我相信你可以很容易地找到一些JavaScript代码在互联网上显示您的网站上运行的时钟。在页面的加载有PHP设置此JavaScript片段的初始开始时间,我相信你很好去。

3

试试这个:

<javascript> 
var ctime = '<?php echo date ("g:i a"); ?>'; 
</javascript> 

然后让计时器增加在JavaScript端的价值。这不是很精确,但如果我看到了这一点,你只需要几分钟,而不是几秒,所以精度可能不是问题。

2

使用你的基地时,以实时计算当前时间(不使用任何额外的和潜在的慢/昂贵的请求;它甚至不需要jQuery的):

var getServerTime = (function() { 
    var baseTime = <?php echo time() * 1000; /* convert to milliseconds */ ?>, 
     startTime = new Date().getTime(); 

    return function() { 
     return baseTime + (new Date().getTime() - startTime); 
    }; 
}()); 

该函数返回当前时间(以毫秒为单位)基于服务器端时间。您可以定期更新您的网站,并使用此功能确定当前服务器端时间,如下所示:

// update the site every minute 
setInterval(function() { 
    var currentServerTime = getServerTime(); 
    // update everything (format date or something) 
}, 60 * 1000);