示例
先来看一个小示例:
$needle = '1abc';
$haystack = array(1,2,3);
var_dump(in_array($needle, $haystack);
//输出为 true
解释
根据官方文档函数 in_array 的描述:
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
在 haystack 中搜索 needle,如果没有设置 strict 则使用宽松的比较。
第三个参数默认为 false,当 $needle 和 $haystack 中的元素比较时会进行类型转换,相当于使用 == 进行比较。
总结
in_array()第三个参数决定变量和数组中元素如何进行比较。值为 false(默认值)时,相当于 ==,值为 true 时,相当于 ===。