【问题标题】:DateTime::createFromFormat issue with particular date/time特定日期/时间的 DateTime::createFromFormat 问题
【发布时间】:2015-01-03 08:05:45
【问题描述】:

我已经使用以下代码几个月了,它运行良好,但现在似乎在某个时间或时间范围内出现问题。 我有一个 GPS 跟踪器,它可以像这样发送它的日期/时间: 150102235335

格式是ymdhis

$input_array[6] = 150102235335;
$datetime = DateTime::createFromFormat('ymdhis', $input_array[6]);
$datetime = $datetime->format('Y-m-d h:i:s');

使用那个时间,php 崩溃并出现以下错误: PHP 致命错误:在非对象上调用成员函数 format()

似乎 datetime 最终为空。 但是,使用时间 150103004933 就可以了。

谁能看到我在这里出错的地方,或者这是一个错误? 有没有更好的方法来完成我的日期转换? 我正在使用 PHP 5.4.35

【问题讨论】:

  • 我以这种格式插入数据库例如:2015-01-03 12:37:25
  • 看看下面的答案应该是正确的格式
  • 输入不是unix时间戳。它是 ymdhis(或者更准确地说是下面 Mark 指出的 ymdHis)。

标签: php datetime


【解决方案1】:

h 是 12 小时格式;因此 23 小时是无效的。只有 00-11 范围内的值才有效。

H 是 24 小时制

【讨论】:

  • 这可以解释为什么其他时间工作正常。谢谢!郑重声明,这显然是我在一天中的那个时候第一次开车。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-25
  • 1970-01-01
相关资源
最近更新 更多