如何检查字符串是否为有效的日期、时间或日期时间

2022-08-30 17:11:40

当我尝试将值放入无效的DATE字段中时,MySQL似乎使用0000-00-00代替。有没有办法在不更新DATE字段的情况下进行此“检查”?例如PHP来做到这一点?

比如,有没有办法查询MySQL服务器并询问“嘿,这个日期,时间或日期时间对你有效吗?

或者有没有更好的方法来做到这一点?


答案 1

我在我的应用程序中使用此语法,它的工作原理就像魅力一样!

SELECT DATE('2013-09-31') AS valid;

我的系统是Win7x64,带有PHP 5.5和MySQL 5.6.16


答案 2

您可以根据要使用的格式解析日期,然后调用 checkdate 来测试它是否为有效日期。请务必阅读有关 http://php.net/manual/en/function.checkdate.php 的评论。


推荐