繁体   English   中英

使用GMT PHP转换日期

[英]Convert date with GMT php

我以这种格式获取日期: 2016-09-23T19:15:00+02:00

我如何使用php获取格式: 2016-09-23 21:15

我试过了:

date('Y-m-d H:i', strtotime('2016-09-23T19:15:00+02:00');

但是我明白了

2016-09-23 19:15.

试试看:

function parseDate($date){
    $parts = explode("+", $date);
    if(isset($parts[1])) {
        $ph = (int)explode(":", $parts[1])[0];
        // take "02:00", extract "02" and convert to int. result: 2
        return date("Y-m-d H:i:s", strtotime($parts[0]." + $ph hour"));
    }
    return date("Y-m-d H:i:s", strtotime($date));
}

echo parseDate("2016-09-23T19:15:00+02:00");
// output 2016-09-23 21:15:00
echo parseDate("2016-09-23T19:15:00");
// output 2016-09-23 19:15:00

您可以在3v4l.org上进行检查

注意 :避免使用date_default_timezone_set()来设置所有日期/时间函数使用的默认时区。 如果您的应用程序已经在设置默认时区,则不建议对其进行覆盖以进行简单的解析。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM