更正strtotime的输入值


Correct input values of strtotime

我想通过以下语句转换日期

$date=date('d M Y, H:m',strtotime($date));

当我尝试$date:的各种值时,它打印出09 Sep 2012, 11:09

11:00 AM Sunday, 09 Sep 2012
Sunday 09 Sep 2012, 11:00 AM
09 Sep 2012 11:00 AM

strtotime()函数需要什么日期格式?在我看来,它们中至少有一个符合"英语文本日期时间描述"条件。

此处详细介绍了strtotime的有效格式。

从此网站(http://www.tuxradar.com/practicalphp/4/5/2)

要警惕这样的日期:2003年8月25日上午10:26。虽然这看起来格式很好,但strtotime()无法处理它,因为它里面有逗号——是的,它们让我们更容易阅读,但str托特me()在处理它们时会感到困惑。如果您的日期中有逗号,请确保使用str_replace()将其删除。

如何处理strtotime()->http://www.w3schools.com/php/func_date_strtotime.asp

看起来唯一的方法是用正则表达式按正确的顺序对元素进行排序,然后用相应的数字替换月份名称。这样的字符串strtotime可以管理。注意:我说的是PHP 5.2x

编辑:我发现strtotime"不起作用"的原因是我在日期格式字符串中拼写错误,应该有"d M Y,H:I"