测试日期值与空值

时间:2012-09-04 00:43:33

标签: php mysql date

我喜欢比较日期(从数据库中提取空值(0000-00-00))。 我试着这样做:

$dateValue = $row_recordset3['ttDateEnvoiDEP'];

if ($dateValue === '0000-00-00') {                  
    $dateEnvoiDEP = "CURRENT_DATE()";                   
}
else {
    $returnOK .= $dateValue;
    $dateEnvoiDEP = $row_recordset3['ttDateEnvoiDEP'];
} 

但它不起作用,你知道为什么吗?

3 个答案:

答案 0 :(得分:1)

CURRENT_DATE()是一个MySQL函数,而不是PHP。

请阅读:http://php.net/date

此外,如果您想使用该格式的当前日期,您可以执行date('Y-m-d'),这将返回2012-09-03或任何日期。

答案 1 :(得分:1)

为什么不直接在SQL查询中执行此操作,

SELECT   IF(ttDateEnvoiDEP = '0000-00-00', CURDATE(), ttDateEnvoiDEP) 
             as `ttDateEnvoiDEP`,
FROM     ...
WHERE    ...

答案 2 :(得分:0)

如果你想用PHP处理日期,你可以使用unix时间戳。 阅读php timedate了解更多信息

问题是你的代码是你比较的$ dateValue.0000-00-00不是null。不清楚你在这里做什么。但我想你想知道价值是否已设定。所以你可以尝试

isset($dateValue)

希望这可以帮到你!

编辑:

if(!isset($dateValue)){
    $dateEnvoiDEP = time();
}else{
//do other stuff
}