2012-05-24 103 views
2

如何以下字符串轉換:PHP轉換格式錯誤的字符串轉換成日期

24 May, 2012, 00:00am 

的格式,如:

$today = date("D M j G:i:s T Y");    // Sat Mar 10 17:16:18 MST 2001 

我已經試過如下:

$date = date('D M j G:i:s T Y', strtotime("24 May, 2012, 00:00am")); 

但我得到的是:

Thu Jan 1 0:00:00 UTC 1970 

我正在考慮爆炸字符串,然後通過mktime()運行它,但我想知道是否有更好的方法來做到這一點?

回答

5

我會使用​​類和createFromFormat函數,它允許您根據您定義的格式解析日期。

在這種情況下:

$date = DateTime::createFromFormat("d M, Y, h:ia", "24 May, 2012, 00:00am"); 

然後可以使用其他日期時間函數來處理這個。

請注意,您提供的日期實際上不符合任何標準:您的意思是00:0012:00am

+0

完美,謝謝。 – Tisch