将日期转换为gmt - php

时间:2010-05-08 23:17:56

标签: php

我遇到了一个奇怪的问题,也许你可以提供帮助:

我正在尝试将日期转换为GMT时间,这就是我正在做的事情:

$date = '2010-05-27 23:02:01';
$gmt_date = gmdate('Y-m-d H:i:s', $date );

$gmt_date的收益是这样的: 1970-01-01 00:33:31

我做错了什么?

2 个答案:

答案 0 :(得分:14)

gmdate期望第二个参数是一个整数(来自unix纪元的秒数​​)

试试这个:

$date = '2010-05-27 23:02:01'; 
$gmt_date = gmdate('Y-m-d H:i:s', strtotime($date) );

答案 1 :(得分:4)

您需要将$ date转换为时间戳。您可以使用strtotime()函数执行此操作。根据时区,您可能需要设置php时区或在调用strtotime函数之前将时区附加到$ date字符串。

$gmdate_str = gmdate('Y-m-d H:i:s', strtotime($date));