I have a problem with date time formater in yii2,
This is my simple code (console app):
public function actionCvDate() {
echo "Default timezone: " . date_default_timezone_get() . "\n";
echo "Yii date time format: " . \Yii::$app->formatter->datetimeFormat . " timezone: " . \Yii::$app->formatter->timeZone. "\n";
$time = mktime(0, 0, 0, 1, 14, 1971);
echo "Timestamp: " . $time . "\n";
echo "To date time string (Yii): " . \Yii::$app->formatter->asDatetime($time) . "\n";
echo "To date string (Yii): " . \Yii::$app->formatter->asDate($time) . "\n";
echo "Date (PHP): " . date("d-m-Y H:i:s", $time) . "\n";
return null;
}
When i run in my local machine (Linux Mint 17, PHP 5.6.18), it work:
$ ./yii test/cv-date
Default timezone: Asia/Ho_Chi_Minh
Yii date time format: php:d/m/Y H:i:s timezone: Asia/Ho_Chi_Minh
Timestamp: 32630400
To date time string (Yii): 14/01/1971 00:00:00
To date string (Yii): 14/01/1971
Date (PHP): 14-01-1971 00:00:00
But when i run on my server (Centos 6.6, PHP 5.6.18) it display wrong time:
$ ./yii test/cv-date
Default timezone: Asia/Ho_Chi_Minh
Yii date time format: php:d/m/Y H:i:s timezone: Asia/Ho_Chi_Minh
Timestamp: 32630400
To date time string (Yii): 13/01/1971 23:00:00
To date string (Yii): 13/01/1971
Date (PHP): 14-01-1971 00:00:00
But if i set year = 1976, both machines show "14/01/1971 00:00:00".
Do I have to configure anything else to make it work on my server?
(Sorry for my bad english)