在 PHP 和 MySQL 中处理日期时,必须正确格式化它们以正确插入数据库。
问题来了:如何将 PHP 日期转换为 MySQL 格式的“YYYY-MM-DD”?
假设我们有一个日期PHP 中的字段设置为:
$date = mysql_real_escape_string($_POST['intake_date']);
要将 PHP 日期转换为 MySQL 格式,请考虑以下操作:
如果 MySQL 列是 DATE type:
$date = date('Y-m-d', strtotime(str_replace('-', '/', $date)));
如果是 MySQL 列属于 DATETIME 类型:
$date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date)));
需要注意的是,strtotime() 不适用于连字符 (-) 分隔符。因此,在使用 strtotime() 之前,有必要将连字符替换为斜杠。
或者,对于您提供的包含时间的日期格式,您也可以使用这种基于正则表达式的方法:
$date = '02/07/2009 00:07:00';
$date = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '$3-$2-$1 $4', $date);
echo $date;
这将输出正确的 MySQL 格式“YYYY-MM-DD HH:MM:SS”。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3