2016-12-04 81 views
-1

我想回顯服務器的時間,或在歐洲/倫敦或歐洲/里斯本的時間。 這是我的代碼,但由於某種原因,它顯示系統上的時間或其他東西。我的意思是,在我的電腦我看到正確的時間,但在平板電腦這是遲到了一小時就說明平板OO 這裏的時間是代碼:回波時間不起作用

 <?php 
    $date = new DateTime("now", new DateTimeZone('Europe/Lisbon')); 
    $today = getdate($date); ?> 
    <script> 
     var d = new Date(Date.UTC(<?php /*echo $today['year'].",".$today['mon'].",".$today['mday'].",".$today['hours'].",".$today['minutes'].",".$today['seconds'];*/ echo $date->format('Y,m,d,H,i,s'); ?>)); 
     setInterval(function() { 
      d.setSeconds(d.getSeconds() + 1); 
      $('#timer').text((d.getHours() +':' + d.getMinutes() + ':' + d.getSeconds())); 
     }, 1000); 
    </script> 
    <p><div id="timer"></div></p> 
+0

JavaScript是客戶端,很自然它會打印出客戶端的日期信息,而PHP是服務器端,並自然會打印服務器端的日期。您是否使用相同的主機來測試PC和平板電腦? – 2016-12-04 11:57:43

+0

@CharlotteDunois你應該做出答案:)但是,它並沒有考慮時區 – 2016-12-04 12:10:57

+0

是的..該網站已託管..我建立它「實時在線」xD – Ruth

回答

0

你可以做到這一點使用JavaScript

實施例:

setInterval(function() { 
 
    var date = new Date(); 
 
    var H = date.getHours(); 
 
    var M = date.getMinutes(); 
 
    var S = date.getSeconds(); 
 
    $('#timer').text(H+':'+M+':'+S); 
 
},1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="timer"></div>

+0

無法在此代碼中使用,它是否佔用時區。 – 2016-12-04 12:02:11

+0

**這不是問題的解決方案**。問題是,當計算機或任何設備的時間更改時,**網頁上的時間也會更改**。用戶想要從服務器獲取時間。您顯示的時間也會隨着我的系統時鐘而改變!所以這是他已經得到的東西! –

0
<?php 
    $date = new DateTime("now", new DateTimeZone('Europe/Lisbon'); 
    $today = $date->format('Y-m-d H:i:s'); 
?> 

    <div id="timer"></div> 

    <script> 
    var d = new Date('<?php echo $today ?>');  
    setInterval(function() { 
     d.setSeconds(d.getSeconds() + 1); 
     document.getElementById('timer').innerHTML=(d.getHours() +':' + d.getMinutes() + ':' + d.getSeconds()); 
    }, 1000);  
    </script> 
+0

歡迎來到SO。請你解釋一下爲什麼你認爲這是正確的答案? –