当我尝试将值放入无效的DATE字段时,MySQL似乎使用了0000-00-00.有没有办法在没有更新DATE字段的情况下"检查"?并从例如PHP做到这一点?
比如,有没有办法可以查询MySQL服务器并询问"嘿,这个DATE,TIME或DATETIME对你有效吗?"
或者是否有更好的方法呢?
有没有办法检查日期/时间是否有效你会认为这些很容易检查:
$date = '0000-00-00';
$time = '00:00:00';
$dateTime = $date . ' ' . $time;
if(strtotime($dateTime)) {
// why is this valid?
}
Run Code Online (Sandbox Code Playgroud)
真正让我感到满意的是:
echo date('Y-m-d', strtotime($date));
Run Code Online (Sandbox Code Playgroud)
结果:"1999-11-30",
是吧?我从的电子邮件发送到1999-11-30 ???
我知道我可以做比较,看看日期是否等于我的日期,但它不是一个非常强大的检查方式.有没有一个好方法来检查我是否有一个有效的约会?任何人都有很好的功能来检查这个?
编辑:人们在问我正在运行的是什么:在Linux localhost上运行PHP 5.2.5(cli)(内置:2008年7月23日11:32:27)2.6.18-53.1.14.el5#1 SMP 3月5日星期三11 :36:49 EST 2008 i686 i686 i386 GNU/Linux