日期时间格式PHP和MySQL

Jac*_*hym 3 php mysql datetime

我有以下问题.我有一个字符串,其中包含时间和日期,如下所示:dd/MM/yy hh:mm:ss这是我用PHP编写的.然后我有一个MySQL数据库,它有一个日期时间格式的列,我需要插入这个值.显然问题是,格式不同,因此不是实际日期,而是导致字段"0000-00-00 00:00:00".

你可以帮我转换这个字符串,然后将它正确插入MySQL吗?对于MySQL,我使用标准的INSERT INTO命令.

Ama*_*ali 5

从DATETIME文档:

MySQL DATETIME以YYYY-MM-DD HH:MM:SS格式检索和显示值.

我将使用PHP的DateTime类和DateTime::createFromFormat()方法,并将数据转换为MySQL兼容的日期字符串,如下所示:

$date = DateTime::createFromFormat('d/m/Y H:i:s', $yourDateString);
$dateToBeInserted = $date->format('Y-m-d H:i:s');
Run Code Online (Sandbox Code Playgroud)

演示!


dev*_*evo 2

写一个函数来转换日期,

function sqldate($date)
{
   $sql_date = date('Y-m-d H:i:s',strtotime($date));
   return $sql_date;
}
Run Code Online (Sandbox Code Playgroud)

你的查询看起来像,

$query = "INSERT INTO tableName (dateColumn) VALUES('".sqldate($date)."') ";
Run Code Online (Sandbox Code Playgroud)