在 PHP 和 MySQL 中处理日期时,必须正确格式化它们以便正确插入数据库。
问题来了:如何将 PHP 日期转换为 MySQL 格式的“YYYY-MM-DD”?
假设我们在 PHP 中有一个日期字段设置为:
<code class="php">$date = mysql_real_escape_string($_POST['intake_date']);</code>
要将 PHP 日期转换为 MySQL 格式,请考虑以下事项:
如果 MySQL 列是 DATE 类型:
<code class="php">$date = date('Y-m-d', strtotime(str_replace('-', '/', $date)));</code>
如果 MySQL 列属于 DATETIME 类型:
<code class="php">$date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date)));</code>
需要注意的是,strtotime() 不适用于连字符 (-) 分隔符。因此,在使用 strtotime() 之前,有必要将连字符替换为斜杠。
或者,对于您提供的包含时间的日期格式,您也可以使用这种基于正则表达式的方法:
<code class="php">$date = '02/07/2009 00:07:00'; $date = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '-- ', $date); echo $date;</code>
这将输出正确的 MySQL 格式“YYYY-MM-DD HH:MM:SS”。
以上是如何将 PHP 日期转换为 MySQL'YYYY-MM-DD”格式?的详细内容。更多信息请关注PHP中文网其他相关文章!