我正在使用带有PHP的MySQL数据库。我使用DATETIME
字段将日期值存储在数据库中。
我正在使用此PHP代码将输入的日期转换为适当的MySQL格式。
date("Y-m-d H:i:s", strtotime($inputDate))
但是,只要日期无效,它就会以1969-12-31 19:00:00
有没有办法将其默认为0000-00-00 00:00:00
?
答案 0 :(得分:15)
只需使用strtotime()
的输出检测有效性,returns false
on failure。
类似的东西:
$time = strtotime($inputDate);
$date = ($time === false) ? '0000-00-00 00:00:00' : date('Y-m-d H:i:s', $time);
答案 1 :(得分:1)
strtotime返回false,哪个日期证明为0.在你应该检查strtotime没有返回false以防止:
$ts = strtotime($inputDate);
if ($ts === false)
{
//invalid date
}
else
{
echo date("Y-m-d H:i:s", $ts);
}