in_array() 函数是PHP中常用的数组函数之一,用于搜索数组中是否存在指定的值。

语法

bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )

参数描述needle必需。规定要在数组搜索的值。haystack必需。规定要搜索的数组。strict可选。如果该参数设置为 TRUE,则 in_array() 函数检查搜索的数据与数组的值的类型是否相同。

返回值: 如果在数组中找到值则返回 TRUE,否则返回 FALSE。

基础用法

你可以直接调用 in_array() 函数,传入必须的参数,如下所示:

$sites = array("Google", "Runoob", "Taobao", "Facebook");

if (in_array("Runoob", $sites))

{

echo "找到匹配项!";

}

else

{

echo "没有找到匹配项!";

}

运行结果:

找到匹配项!

使用严格模式

如果我们需要查找的值与数组中元素的类型和值都匹配时,可以使用严格模式。这种情况下,只有查找的值得类型和值都和数组元素相同时,才会返回true。

$arr = ['704','704A','704B','705A','705B'];

var_dump(in_array(705, $arr));// true

var_dump(in_array(705, $arr, true));// false

在上面的例子中,如果不适用严格模式,则"705A"和整数705被视为相等。但是,在严格模式下,则需要考虑类型,因此它们是不相等的。 如果不使用严格模式。则705就会被判定在数组中,其实是不在数组中的,会使用我们的程序出现BUG,所以在实际开发中,判断一个变量是不是在数组中,一定要注意是否需要判断这个变量的类型,负责则会使我们的系统出现问题。

推荐链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: