2011-04-22 101 views
8

問題是日期('r')返回錯誤的時間爲我的時區。錯誤的PHP日期()輸出在wamp服務器

的php.ini區設置:
date.timezone =歐洲/基輔

date_default_timezone_set( '歐洲/基輔')在我的腳本解決了這個問題。

那麼WAMP有什麼問題?

+0

你的'phpinfo()'裏有什麼? – zerkms 2011-04-22 08:36:36

+0

php.ini中的設置在wampserver2.2之前實際不起作用,但現在已在wampserver2.4中修復 – xhlwill 2013-09-13 09:11:12

+0

編輯'php.ini'文件中的配置後重啓wamp服務器 – Rafee 2017-11-24 10:02:45

回答

3

編輯php.ini文件後需要重新加載配置/重啓服務器。

+0

或編輯適當的'php .ini' ;-) – zerkms 2011-04-22 08:39:24

+0

對不起,我忘記提及我重新啓動了我的服務器多次。 – anon 2011-04-22 09:07:32

6

我建議您還是使用date_default_timezone_set()從腳本

例如

date_default_timezone_set('Europe/Kiev'); 

ini_set('date.timezone', 'Europe/Kiev'); 

...避免PHP猜測時區。

當您將代碼傳輸到不同的服務器時,例如在烏克蘭以外的地方,它非常方便。如果date.timezone未在php.ini中設置,或者其設置不正確,此行應幫助您避免意外(錯誤)結果。當您無法訪問和/或修改php.ini(共享主機)時也很方便。

此外,請確保您沒有在php.ini的行和行中使用;

更改後重新啓動服務器php.ini

4

編輯php.ini並重新啓動Apache:

  • 左鍵WampServer在托盤圖標
  • 開放php.ini(去PHP - > PHP。INI
  • 設置新date.timezone
 
    ;date.timezone = UTC 
    date.timezone = Europe/Kiev 
  • 重新啓動Apache(去阿帕奇 - >服務 - >重新啓動服務)由phpinfo();
date.timezone
  • 校驗值
  • 0

    默認情況下,它顯示GMT時間,你可以改變你的祗園用下面的代碼

    date_default_timezone_set("Asia/Bangkok");//set you countary name from below timezone list 
        echo $date = date("Y-m-d H:i:s", time());//now it will show "Asia/Bangkok" or your date time 
    

    支持時區 http://www.php.net/manual/en/timezones.php

    0
    1. 有可能記事本++,崇高的文本打開你的php.ini的名單...
    2. 此行添加到文件:date.timezone =「X」其中X是您希望的時區。獲取此處支持的時區列表:http://php.net/manual/en/timezones.php

    ...應該這樣做。 3.重新啓動服務器

    0

    我知道這是一個老問題。 如果您使用的是PHP框架,您可能需要檢查框架的配置文件。例如在Laravel中,打開config/app.php,您會在那裏找到時區。將其設置爲您的時區。