php日期函数返回错误值

时间:2016-05-16 17:12:25

标签: php mysql datetime strtotime

我正在尝试将用户输入的12小时时间转换为24小时时间,因此我可以更好地对其进行排序和报告。无论输入什么,下面的代码都会返回16:00。

$starttime1 = date("H:i", strtotime("$starttime"));

在这种情况下,送到$ starttime的是g:i:s:A或4:00:00:AM

在搜索的最后一小时,似乎是日期函数无法获取正确信息的问题,所以我尝试了DateTime :: createFromFormat

$starttime = DateTime::createFromFormat('g:i:s:A', $starttime);
  $starttime1 = $starttime->format( 'H:i');

生成null

我觉得我在做一些愚蠢的事情......需要从编码中休息一下并保持谷歌搜索,但希望有人能指出我正确的方向。

1 个答案:

答案 0 :(得分:1)

这可能是因为你的时间字符串中有:AM。它应该是一个空格而不是:

$time = '4:00:00 AM';
$time = date('H:i', strtotime($time));

$time的var_dump将是:

string(5) "04:00"