2013-11-21 46 views
0

在我的PHP服務器上,我有一個顯示時間(小時:分鐘)的頁面。 「today.php」上顯示的時間與機器的時間一致。PHP服務器時間與客戶端不同

但是當我從網絡上另一臺PC的瀏覽器調用該頁面時,它會顯示來自不同時區的時間。

我希望該頁面能夠爲每個人顯示相同的時間。

我想它與我的php.ini有關,但我不知道如何解決它。 php.ini中的

---- ----詳細

[Date] 
; Defines the default timezone used by the date functions 
; http://php.net/date.timezone 
date.timezone = UTC 

---- php.ini文件的詳細信息----

+3

如果您使用PHP生成時間,那麼您使用的計算機無關緊要。聽起來你可能真的在JavaScript中這樣做?顯示在頁面上生成時間的代碼。 – jszobody

+0

today.php的代碼是什麼? – Shef

+0

我在php中獲得時間,而不是Js(因爲這是一個時間管理應用程序,我不希望用戶作弊)。 PHP代碼---- 函數db_now(){ \t global $ g_db; \t return time(); } $ hh = date('H',db_now()); $ mi = date('i',db_now()); $ jj = date('d',db_now()); $ mm = date('m',db_now()); –

回答

0

如果在同一臺服務器的時候不該」上不管哪個瀏覽器/客戶端訪問它都不會改變。也許你會用Javascript顯示時間嗎?

或者是多個服務器上的php腳本?

IF的時區是錯誤的服務器上,你可以在php.ini文件(如果你有機會)設置它 - 或者你可以做到這一點在每個腳本中使用的ini_set ...如:

這將爲英國工作。 或者,您可以在以下地址找到您的正確時區:http://php.net/manual/en/timezones.php

+0

我在php中獲得時間,而不是Js(因爲這是一個時間管理應用程序,我不希望用戶作弊)。 PHP代碼---- 函數db_now(){ \t global $ g_db; \t return time(); } $ hh = date('H',db_now()); $ mi = date('i',db_now()); $ jj = date('d',db_now()); $ mm = date('m',db_now()); –

0

您是否需要在PHP中執行此操作?對於在JavaScript Date object客戶端顯示,您可以使用:

<script language="javascript"> 
userDate = new Date(); 
document.write(userDate.toLocaleString()); 
</script> 
-1

已解決! 我發現該應用程序中的每個用戶都可以選擇他自己的時區,這就解釋了我的問題。

謝謝大家

+0

請勿將您的評論聲明爲答案,如果評論有效,請使用評論進行通知。 – sharafjaffri