2011-06-08 30 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);