使用PHP将UTC日期时间转换为本地日期时间。怎么样?

时间:2017-03-14 08:12:49

标签: php date datetime

使用以下代码我得到如下所述的输出。

echo $date = new date('c', strtotime('2017-03-14T22:30:00.000Z'));

当前输出:2017-03-15T04:30:00+06:00

预期输出:2017-03-15 10:30:00 AM

我怎么能用PHP做到这一点?

2 个答案:

答案 0 :(得分:1)

请试试这个: echo $date = date('Y-m-d H:i:s A', strtotime('2017-03-14T22:30:00.000Z'));

答案 1 :(得分:0)

我建议使用DateTime

$d = new DateTime('2017-03-14T22:30:00.000Z');
echo $d->format('Y-m-d H:m:s');
//2017-03-14 22:03:00

$d->setTimezone(new DateTimeZone('Asia/Dhaka'));
echo $d->format('Y-m-d H:m:s');
//2017-03-15 04:03:00

此外,在我看来亚洲/达卡实际上是UTC + 6所以你所追求的是2017-03-15T04:30:00,而不是2017-03-15T10:30:00(这里的偏差是12小时)?