将 GMT+# 格式的日期时间转换为 GMT

Posted

技术标签:

【中文标题】将 GMT+# 格式的日期时间转换为 GMT【英文标题】:Convert datetime in GMT+# format to GMT 【发布时间】:2018-04-13 11:29:34 【问题描述】:

我有这样的输入格式,我需要将其转换为 GMT 格式:

$input = array(
           "gmt" => "+7",
           "datetime" => "2017-10-10 12:10:12"
         );

输入数据包含gmt数组索引,显示哪种gmt格式,日期时间索引显示“Y-m-d h:i:s”中需要从GMT+7转换为GMT的日期。

【问题讨论】:

我想你想了解本地化***.com/questions/10971363/php-localization 【参考方案1】:

试试这个:

$input = array(
  "gmt" => "+7",
  "datetime" => "2017-10-10 12:10:12"
);

$ny = new DateTimeZone("GMT+7");
$gmt = new DateTimeZone("GMT");
$date = new DateTime( $input["datetime"], $ny );
$date->setTimezone( $gmt );

echo $date->format('Y-m-d H:i:s');

【讨论】:

【参考方案2】:

Oneshot(不推荐):

echo date('Y-m-d h:i:s', strtotime($input['datetime'])+$input['gmt']*3600);

【讨论】:

以上是关于将 GMT+# 格式的日期时间转换为 GMT的主要内容,如果未能解决你的问题,请参考以下文章

将带有 GMT 的字符串转换为日期时间格式 - php [重复]

iOS日期转换之UTC/GMT时间格式

将 GMT 日期时间转换为本地时区日期时间

NSDate - 将日期转换为 GMT

用户日期时间设置为 GMT,如何将日期转换为其本地化设置?

将 GMT 时间转换为特定的字符串格式 [重复]