DateTime解析错误,找不到时区和舍入时间

时间:2018-07-24 18:02:18

标签: php datetime

以下脚本返回以下错误。

foreach($data[key($data)] as $index=>$row) {
    $dt = new \DateTime($row['time']);
    $dt->setTimeZone($o->dateTimeZone);
    //...
}
  

DateTime :: __ construct():无法解析时间字符串   (2018-07-10T17:52:33.931841554Z)在位置0(2):时区可以   在数据库中找不到(0)

2018-07-10T17:52:33.931841554Z引起的错误是否位数太多?如果是这样,我应该如何将其舍入到更少的位数,以免导致错误?还是其他原因引起的?

1 个答案:

答案 0 :(得分:0)

有点黑,但这就是我最终要做的。

foreach($data[key($data)] as $index=>$row) {
    if($fraction=substr ($row['time'],19,-1)) {
        $row['time']=substr($row['time'],0,19).substr($fraction,0,9).substr($row['time'], -1);
    }
    $dt = new \DateTime($row['time']);
    $dt->setTimeZone($o->dateTimeZone);
    //...
}