为什么在 PHP 中比较数据库值与'NULL”不能按预期工作?

Patricia Arquette
发布: 2024-10-30 08:47:27
原创
828 人浏览过

Why Does Comparing a Database Value to

如何在 PHP 中正确检查 NULL 值

处理数据库结果时,必须准确检查 NULL 值以避免意外情况结果。出现这种情况的一种常见情况是根据是否存在 NULL 值来渲染 HTML 元素。

考虑以下 PHP 代码:

<code class="php">$query = mysql_query("SELECT * FROM tablex");

if ($result = mysql_fetch_array($query)){

    if ($result['column'] == NULL) { print "<input type='checkbox' />"; }
    else { print "<input type='checkbox' checked />"; }
}</code>
登录后复制

在此示例中,代码尝试如果查询行中的“列”字段不为 NULL,则显示选中的复选框。但是,即使“列”字段不为 NULL,显示的复选框仍保持未选中状态。这种行为可能看起来出乎意料。

要解决此问题,我们需要使用一个显式检查 NULL 值的运算符。 == 运算符检查严格相等,这意味着类型和值必须匹配。但是,在这种情况下,将根据文字字符串“NULL”检查该值,这始终会导致错误比较。

要正确检查 NULL 值,您可以使用以下方法之一:

1。 is_null() 函数:

<code class="php">is_null($result['column'])</code>
登录后复制

2. === 运算符:

<code class="php">$result['column'] === NULL</code>
登录后复制

这两种方法都会准确检查 NULL 值,并允许您在字段不为 NULL 时按预期显示选中的复选框。

请记住,在检查 NULL 值时,使用专门测试此条件的运算符至关重要,例如 is_null() 或 ===,以避免误解。

以上是为什么在 PHP 中比较数据库值与'NULL”不能按预期工作?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!