首页  >  问答  >  正文

解析日期格式的碳元素

我正在尝试解析格式如下的日期:

2017-09-20T10:59:10.0000000 01:00

我正在使用 Carbon,所以我尝试过:

Carbon::createFromFormat('Y-m-dTH:i:s.u vP', $date)

哪个输出:

The timezone could not be found in the databasen
Unexpected data found.n
Data missing

我猜最后一个时区参数可能是错误的,但我找不到如何解析该日期格式:/

感谢您的帮助!

P粉337385922P粉337385922385 天前672

全部回复(1)我来回复

  • P粉236743689

    P粉2367436892023-10-22 10:44:17

    您需要向时区添加一个符号,例如:

    +01:00

    那么这对你有用:

    Carbon::createFromFormat('Y-m-d\TH:i:s.0000000 P', $date)

    如果您的字符串可以包含 -01:00,但您得到的不是 +01:00,而是 01:00,请执行以下操作第一:

    $timezone = str_after($date, ' ');
    if ($timezone[0] !== '-') {
        $date = str_before($date, ' ') . ' +' . $timezone;
    }

    回复
    0
  • 取消回复