PHP转换为时间()“3月25日星期三下午3:30”,但不能得到小时分钟

时间:2015-03-23 02:45:41

标签: php datetime

似乎我只是遗漏了一些东西。我试图将其转换为时间(),但我没有得到时间和分钟。

<?php
$ss = '3:30 pm Wed 25 Mar';
echo $ss;
echo '<hr />';
echo strtotime($ss); // 1427212800

但1427212800转换为2015年3月25日星期三00:00:00(GMT +8)

我如何获得时间和分钟?感谢

1 个答案:

答案 0 :(得分:1)

使用:DateTime::createFromFormat(),而不是让PHP猜测您尝试提供的格式。这将为您提供一个完整的DateTime对象,这对于其他东西很方便...并且您也可以获得时间戳:

echo DateTime::createFromFormat('g:i a D j M', '3:30 pm Wed 25 Mar')
        ->getTimeStamp(); // 1427315400

有了这个,你就会失去猜测多种日期格式的能力,但它可以正常使用你提供的格式。