我的数据库有这样的日期条目: 8月29日20:00 PM
echo $datetest;
//prints 29th August 20:00 PM
$myDateTime = DateTime::createFromFormat('jS F H:i A', $datetest)
$startHoursString = $myDateTime->format('H');
echo $startHoursString;
// prints 08 instead of 20
我原以为$ startHoursString是20而不是8。
任何人都可以对此或解决方法有所了解吗?
答案 0 :(得分:2)
这是脏黑客,但它应该有效,如果你确定日期是这种AM/PM
格式,你必须从字符串中移除最后3个字符(AM或PM加空格):< / p>
$myDateTime = DateTime::createFromFormat('jS F H:i', substr($datetest, 0, -3));
小提琴here。
此外,请记住,使用AM/PM
有效期最长为12小时,20:00 AM / PM为 INVALID 格式。