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