我有这个字符串2012-06-27 16:17:06
,我想将其转换为GMT格式
我怎么能这样做?
非常感谢。
答案 0 :(得分:6)
使用gmdate()。
使用strtotime
将当前日期格式转换为UNIX时间戳,然后使用gmdate($format, $timestamp);
答案 1 :(得分:2)
嗯,严格来说你不能这样做。 如果您不知道TZ生成了哪个日期,则无法将其转换为另一个TZ。
如果该日期来自数据库,可能您可以使用原始TZ查询日期。
$date = new DateTime( "2011-01-01 15:00:00", $original_TZ );
$date->setTimezone( "GMT" );
答案 2 :(得分:1)
PHP的DateTime对象是一个不错的选择:
$GMT = new DateTimeZone("GMT");
$date = new DateTime( "2011-01-01 15:00:00", $GMT );
$date->setTimezone( $newTZ );
echo $date->format('Y-m-d H:i:s');
答案 3 :(得分:1)
// Set timeline
$time_line = time() +7200; // <-- this is timeline +2
$h = gmdate('h', $time_line);
$i = gmdate('i', $time_line);
$s = gmdate('s', $time_line);
$time = $h.":".$i.":".$s;
echo $time;
答案 4 :(得分:1)
尝试一下,它将起作用
$newTZ = new DateTimeZone("Asia/Calcutta");
date_default_timezone_set("Asia/Calcutta");
$GMT = new DateTimeZone("GMT");
$date = new DateTime( "2018-09-20 6:00:00 PM", $newTZ );
$date->setTimezone($GMT);
echo $date->format('Y-m-d H:i:s');
答案 5 :(得分:0)
试试这个。
$time = '2012-06-27 16:17:06';
echo date("l, F j, Y, g:i a",strtotime($time) ); // assuming gmt format