在PHP中,如何将格式为20:13-02-05T13:45:17-0500的日期/时间字符串转换为有效的MySQL日期时间,以便我可以存储它?
到目前为止,我已经尝试了
$date_id = date('Y-m-d H:i:s', strtotime($date_id));
答案 0 :(得分:1)
我认为这应该有效:
$date_to_store = '20:13-02-05T13:45:17-0500';
$date_for_mysql = date( 'Y-m-d H:i:s' , strtotime( $date_to_store ) );
然后在您的查询中,只需插入$date_for_mysql
:
mysql_query("INSERT INTO `table` (`timestamp`) VALUES ('" . $date_for_mysql . "')");
当然你应该使用预备语句,但这只是为了说明日期转换。
答案 1 :(得分:0)
explode(your_time);
这可以让你获得时间块,然后使用date和mktime。
date(Your_preferred_format, mktime(chunks_as_per_mktime));
答案 2 :(得分:0)
// convert non-standard year format 20:13 to 2013
$date = preg_replace ('/^(\d{2}):(\d{2})/', '$1$2', $date_id);
$timestamp = strtotime ($date);
echo date ('Y-m-d H:i:s', $timestamp);