php inarray返回值为零的TRUE
我尝试使用,如果值为零,则返回TRUE。var\u dump也返回bool TRUEphp inarray返回值为零的TRUE,php,Php,我尝试使用,如果值为零,则返回TRUE。var\u dump也返回bool TRUE $srcElement=0; var_dump(in_array($srcElement,array('HA','DA','SA','CA'))); if (in_array($srcElement,array('HA','DA','SA','CA'))) { echo "VALUE EXISTS"; } else { echo "VALUE NOT FOUND"; } 并将输出作为 bool
$srcElement=0;
var_dump(in_array($srcElement,array('HA','DA','SA','CA')));
if (in_array($srcElement,array('HA','DA','SA','CA')))
{
echo "VALUE EXISTS";
}
else
{
echo "VALUE NOT FOUND";
}
并将输出作为
bool(true) VALUE EXISTS
在为零的情况下如果我使用任何其他整数,则返回ELSE部分。
这背后有什么具体原因吗?在进行比较时,存在类型转换。试着进行严格的比较
in_array($srcElement,array('HA','DA','SA','CA'),true);
var_dump(in_array($srcElement,array('HA','DA','SA','CA')));
将打印
false
var\u dump(0==“HA”)
然后检查_数组中的第三个参数
在_数组中使用strict
参数
另请参见您在问题中提到的手册页面上的第一个示例和注释try$srcelelement='0'代码>明白:(我错过了那个参数.)。。