我对in_array
函数有疑问。
这是我的array
:像这样的例子,键可以是字符串或整数的组合。
<?php
$array = array(
"a" => true,
"b" => true,
"c" => true,
"d" => true,
0 => "Code",
1 => "Time",
2 => "Other"
);
var_dump($array);
if ( in_array("Test", $array) ) { echo "found"; }
此代码始终打印found
。
为什么?
答案 0 :(得分:8)
因为数组中有true
个元素,并且“测试”字符串的计算结果也为true。
尝试启用类似in_array('Test', $array, true)
的严格标志以进行严格比较。