2012-09-12 76 views
0

的一切都在這裏首先是我的php.ini配置關於日期:PHP日期時區的bug

[Date] 
date.timezone = 'America/Sao_Paulo' 

當我得到ini_get(「date.timezone」),它擊掌我下面的美洲/聖保羅(注意小寫P)

我有以下錯誤,每次我用date()

這是不是安全的依靠系統的時區設置。您需要 需要才能使用date.timezone設置或date_default_timezone_set()函數。如果您使用這些 方法中的任何一種,並且您仍然收到此警告,則極有可能是 拼寫錯誤的時區標識符。我們選擇了「美洲/聖保羅」的 「BRT/-3.0 /沒有DST」

如果我使用

date_default_timezone_set('America/Sao_Paulo'); 

一切順利,所以我想的東西是我的擰配置時區。

回答

0

你確定你在正確的php.ini中設置它嗎?

調用phpinfo()函數,並確保你正在修改「加載的配置文件」中列出的ini文件

編輯:當你正在尋找的phpinfo(),你也可以看到,如果時區實際上是被設定查看日期 - >默認時區

+0

是的,我檢查之前,加載的配置文件是/etc/php.ini,時區上的值是時區數據庫=內部,默認時區=美洲/ Sao_Paulo。上面的錯誤也顯示在phpinfo上 – FabioCosta