2011-07-17 71 views
3

我突然變得對我做了一個網站,已工作的罰款,到目前爲止以下錯誤:PHP Mktime錯誤

A PHP Error was encountered 

Severity: Warning 

Message: mktime() [function.mktime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Antarctica/Macquarie' for 'EST/10.0/no DST' instead 

這是有問題的代碼:

$stamp=mktime(0,0,0,$month,$day,$year); 

這裏有什麼問題?我怎樣才能讓這些錯誤消失?我在很多地方以這種格式使用mktime,並在每個地方拋出一個錯誤。

回答

7

如錯誤所述,您需要在代碼中使用date_default_timezone_set('Antarctica/Macquarie');ini_set('date.timezone', 'Antarctica/Macquarie');指定時區,或者在php.ini中定義date.timezone

+0

能否請您提供我需要在php.ini文件中使用的代碼? –

+0

@Click Upvote - 'date.timezone =「Antarctica/Macquarie」'。 –

+1

我不建議這樣做,特別是如果這將在生產環境中。但是,如果這只是你正在做的樂趣或東西,你可以壓制像這樣的警告: '$ stamp = @mktime(0,0,0,$ month,$ day,$ year);' 它是這並不是一件好事,所以你應該修正你的問題。所以你可能應該修好你的php.ini – Paulpro