当使用date例如:0000-00-00时,绕过if if not empty

时间:2012-01-26 09:19:41

标签: php mysql

目前我正在检查if(!is_null($foo)),虽然当mysql列是一个日期并且默认为0000-00-00时这会破坏。

有没有办法在不添加!= "0000-00-00"

的情况下解决此问题

4 个答案:

答案 0 :(得分:3)

如果您不想在代码中解决它,请在数据中解决它。

你应该让MySQL默认为NULL而不是0000-00-00

答案 1 :(得分:2)

对于日期字段,您可以使用strtotime。如果传递给它的false不是date,则此函数返回date。 我不确定您的具体需求,因为您的问题信息非常少。

答案 2 :(得分:1)

更改日期列的表定义

`date` DATE NULL DEFAULT NULL

我始终建议允许NULL用于可选字段,并在另一方面合理区分有效值,如0和空字符串,另一方面NULL(=未说明)手。

答案 3 :(得分:0)

我想你可以使用这样的东西:

if(!(int)$foo)
{
    echo ' this is either a default value or a NULL';
}