in_array : 检查数组中是否存在某个值。Manual中给出的语法是:
bool in_array ( mixed $needle , array $haystack [, bool $strict ] )
意思是在 haystack 中搜索 needle ,如果找到则返回 TRUE ,否则返回 FALSE 。
如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。
其中$needle可以是字符串、整型等数据类型,也可以是数组。
如存在如下数组:
$arr1 = array(0,3,6,2,5);
现在判断数字6是否存在于数组$arr1中:
if (in_array(6, $arr1)) {
echo '6 is in array $arr1';
}
else {
echo '6 is not in array $arr1';
}
结果输出:6 is in array $arr1,和你用肉眼看到的一样,:D
下面来给出数组$arr2如下:
$arr2 = array(1,2,3,4,5,6,7,8);
现在找出$arr1中有哪些element存在于$arr2中并输出。当然,你仍然可以用肉眼判断,但是当$arr1和$arr2中的element都是动态赋值或是数量巨多的时间,肉眼就无能为力了,我们还是交给程序来执行吧,:)
foreach ($arr1 as $v) {
if (in_array($v, $arr2)) {
echo $v.',';
}
}
结果输出:3,6,2,5,
是否和你肉眼判断的一样?