php - PHP:比较整数/字符串变量和空值

标签 php string comparison integer

我有一个整数/字符串变量。如果我在mysqli语句中有错误,它将变为String且没有错误,它将变为affected rows的数量(整数)。

但是在PHP中,如果我们有这样的东西:

$i = 0;
if ( $i < 0 || $i == null ) {
    var_dump($i);
}


我们得到以下结果:

int 0


首先,我想知道为什么会这样吗? (我的意思是,如果var_dumpint 0,为什么if语句不起作用?)

第二,我需要比较的解决方案。

最佳答案

您没有进行严格的比较。
使用===代替==

==将转换类型,然后进行比较

请改用以下方法之一。 is_null是最干净的IMO。

if ( $i < 0 || $i === null ) {..}


要么

if ( $i < 0 || is_null($i)) {..}

关于php - PHP:比较整数/字符串变量和空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14655279/

相关文章:

php - 如何管理查询?

vb.net - 如何修剪 VB.net 字符串中直到并包括 a\的所有文本

scala - 根据 Double 值对对象进行排序?

java - 如何为每个类扩展获取唯一的 ID?

mysql - 比较 DATETIME 字段时的 STR_TO_DATE() 与 CONSTANT

php - paypal 成功 url 返回 null

php - 使用JQuery和php从mysql数据库获取数据

PHP - 调试要求

python - 字符串拆分问题

python - 拆分一列字符串并用 Pandas 计算单词数