数组键比较失败

时间:2012-05-21 21:51:11

标签: php loops

出于某种原因,当我使用foreach循环遍历数组时,条件无法将键与字符串进行比较。我的数组有两个索引,第一个是整数,第二个是字符串。

$firmas[] = $credito['acreditado'];
$firmas['cbi'] = "LIC. MARCELA SOTO ALARCÓN";

当循环发现当时的键是字符串1时,我想做其他事情,但出于某种原因,当我评估整数索引时,结果为真。

 foreach($firmas as $key => $firma){
            var_dump($key);
            var_dump($key=='cbi');die();
        }

输出

int(0) bool(true) 

但是正如你可以看到条件正在寻找字符串'cbi'所以结果应该是整数索引为false而字符串为true。

这里发生了什么?

1 个答案:

答案 0 :(得分:2)

在PHP中,所有字符串都等于0,但不等同于它。尝试使用===而不是==

附录:所有不以数字开头的字符串等于0