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

标签 php mysql

这可能与我之前的问题有关,并且可能与 this 重复.

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

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

另外我正在倾销评估结果:

var_dump(isset($var));

我正在使用 PDO 数据库驱动程序、PHP 5.4.7 和 MySQL 5.5.27。

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

最佳答案

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

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

关于PHP 从数据库返回 NULL 作为空字符串 ""。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20405852/

相关文章:

php - 比较 mysqli 查询中的值

php - 在 Flutter 中获取 pHp 数组或 map 作为 JSON 数据?

php - 从函数返回PHP错误常量(例如E_USER_ERROR),还是使用trigger_error?

php - 获取 ID 数组,然后通过这些 ID 查询不同的帖子类型

php - 关于重复键更新所有新数据 PHP MySQL

java - 如何将 String 转换为 java.util.date 以便使其可插入 "DATE"类型的 mysql 数据库列?

php - 设置 CURLOPT_USERPWD 时用户名问题或冒号传递

php - 有没有办法在不使用 FTP 的情况下从 PHP 更改文件夹权限?

Java JDBC Mysql 连接只在 try catch 内部有效

mysql - 基于 2 个外键列插入或更新