现在又这样一个时间字符串变量
$datetime = '2016-10-10T11:34:16+0800';
可以看出它是一个UTC+8时区的时间,所以:
1、php怎么获取这个时间字符串的时区?
2、php是否可以将这个时间字符串转为其它时区的时间字符串,如转换为UTC+0时区?
这里补充一下:时间字符串的时区是看不出来的,这里给的时间字符串只是个例子
认证0级讲师
你可以用DateTime对象。
DateTime
$dt = new DateTime($datetime); //用你提供的时间字符串创建对象 $tz = $dt->getTimezone(); //获取时区对象 echo $tz->getName(); //输出时区名称 $tz2 = new DateTimeZone('GMT'); //新建时区对象 $dz->setTimezone($tz2); //设置新时区 echo $dz->format('c'); //输出ISO 8601格式的时间,就是你上面提供的那种格式
具体参考文档:http://php.net/DateTime
通过 strtotime($datetime); 转成时间戳再去转换成其他时区的。
strtotime($datetime);
你可以用
DateTime
对象。具体参考文档:http://php.net/DateTime
通过
strtotime($datetime);
转成时间戳再去转换成其他时区的。