本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
php查询数组某一个value值是否存在
方法1:使用in_array()函数
in_array() 函数可以查找数组中是否包含某个值,如果存在则返回 TRUE,不存在则返回 FALSE。语法格式如下:
in_array($needle, $array[, $strict = FALSE])
参数说明如下:
- $needle:为待搜索的值,如果 $needle 是字符串,则在比较时区分大小写;
- $array:为待搜索的数组;
- $strict:为可选参数,默认为 FALSE。
- 如果 $strict 为空或者 FALSE,则 in_array() 函数只会检查 $needle 的值是否和 $array 中的值相等;
- 如果 $strict 的值为 TRUE,in_array() 函数除了会检查 $needle 和 $array 中的值之外,还会比较它们的类型是否相等。
示例:
<?php
header("Content-type:text/html;charset=utf-8");
$sites = array("Google", "Taobao", "Facebook");
if (in_array("PHP中文网", $sites))
{
echo "找到匹配项!";
}
else
{
echo "没有找到匹配项!";
}
?>
方法2:使用array_search()函数
array_search() 函数在数组中搜索某个键值,如果在数组中找到指定的键值,则返回对应的键名,否则返回 FALSE。语法格式如下:
array_search(value,array,strict)
value 必需。规定在数组中搜索的键值。
array 必需。规定被搜索的数组。
strict 可选。如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:
true
false - 默认
如果设置为 true,则在数组中检查给定值的类型,数字 5 和字符串 5 是不同的(参见实例 2)。
如果在数组中找到键值超过一次,则返回第一次找到的键值所匹配的键名。
示例:
<?php
header("Content-type:text/html;charset=utf-8");
$sites = array("Google", "Taobao", "Facebook");
if (array_search("Taobao", $sites))
{
echo "找到匹配项!";
}
else
{
echo "没有找到匹配项!";
}
?>