PHP从数据库返回NULL作为空字符串“”。为什么?

时间:2013-12-05 16:49:33

标签: php mysql

这可以与我之前的问题相关联,也许与this重复。

那么,为什么在MySQL数据库中声明为NULL的值返回为""(空字符串),在这种情况下,我的所有函数都会根据评估结果返回一些值,但不能正常工作。

$var = NULL; // false
$var = ""; // true

我也倾向于评估结果:

var_dump(isset($var));

我正在使用PDO DB驱动程序,PHP 5.4.7和MySQL 5.5.27。

这是预期的行为还是这个错误? NULL在字段中保存为MySQL NULL,而不是字符串'NULL'。

1 个答案:

答案 0 :(得分:4)

您需要使用is_null()来查看该值是否为空。 NULL等于零。甚至是另一个NULL

(在您的示例中,您使用了赋值运算符(=),而不是比较运算符(=====),但我确信这只是您问题中的拼写错误)。