如何将格式DDMMMYYYY的日期转换为db可存储日期

时间:2010-08-09 07:25:17

标签: php datetime

大家好我的应用程序解析文本文件,其中日期值以以下格式存储:DDMMMYYYY例如:12MAR2009。

我注意到将此值插入数据库日期时间值根本不起作用。如何将其转换为可以输入数据库的日期时间值。我的申请是在php。

2 个答案:

答案 0 :(得分:3)

此类内容应将您的日期转换为MySQL's DATETIME format

$date = new DateTime('12MAR2009', new DateTimeZone('America/New_York'));
$mysql_date = $date->format('Y-m-d H:i:s');

您可以使用strtotime(),但使用它进行时区处理会让您感到痛苦。

答案 1 :(得分:2)

$timestamp = strtotime("12MAR2009");

...

INSERT INTO my_table (..., timestamp) VALUES (..., FROM_UNIXTIME($timestamp))

PHP函数strtotime()将几乎包含任何包含日期/时间值的字符串,并将其转换为unix时间戳。

MySQL函数FROM_UNIXTIME()将采用unix时间戳并将其转换为MySQL的日期时间格式。