我正试图在php中将用户输入的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');
生成空
我觉得我在做傻事。。需要从编码中休息一下,并将继续在谷歌上搜索,但希望有人能给我指明正确的方向。
这可能是因为您的时间字符串中有一个:AM
。它应该是一个空间,而不是:
$time = '4:00:00 AM';
$time = date('H:i', strtotime($time));
$time
的var_dump为:
string(5) "04:00"