有没有人可以帮我解决如何从电子邮件标题转换数据?
我有来自电子邮件标题的下一个日期格式:
Wed, 28 Apr 2010 21:59:49 -0400
我需要将它们转换为mysql Date或timestamp。谢谢!
答案 0 :(得分:16)
您应该使用DateTime
,特别是DateTime::createFromFormat()
:
$str = 'Wed, 28 Apr 2010 21:59:49 -0400';
$date = DateTime::createFromFormat( 'D, d M Y H:i:s O', $str);
现在,您在$date
中有一个Date对象,您可以获取unix时间戳(如果这是您想要的),或者您可以将其格式化为MySQL的日期。
echo $date->getTimestamp(); // Outputs: 1272506389
echo $date->format( 'Y-m-d H:i:s'); // For MySQL column, 2010-04-28 21:59:49
您可以在the demo中看到它。