PHPのdate関数で時間が狂う、ずれる場合の対処法

php.iniの設定でタイムゾーンを指定、HTTPD再起動

[Date]
; Defines the default timezone used by the date functions
date.timezone = Asia/Tokyo

それか、該当スクリプトの頭に以下を追加で解決するか試してみる。

date_default_timezone_set(‘Asia/Tokyo’);