UTC/local time in Worpdress

your post is very old, but in case someone gets the same issue.

Even if your server is set to date_default_timezone_set(‘America/New_york’);
When WordPress runs, it rewrite the config to date_default_timezone_set(‘UTC’) to store datetime in UTC, which is the Universal Time without offset.

Usually, when I compare a date to now, I use the variable $_SERVER[‘REQUEST_TIME’].
But this variable is not converted.

I found out that instead of using that variable, I should use the wordpress function current_time(‘U’), which will reflect the current time with offset accordingly to my WordPress Setting.

Hope that could help.