两种方法:1、用“array_search(指定键值,$arr)”语句,如果返回键名则有指定键值,如果返回FALSE则没有指定键值。2、用“array_keys($arr,键值)”语句,如果返回的键名数组为空,则没有指定键值,反之则有键值。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php检测数组是否有某个键值的两种方法

方法1:使用array_search() 函数

array_search() 函数在数组中搜索某个键值,并返回对应的键名。如果没有值则否则返回 FALSE。

<?php
header('content-type:text/html;charset=utf-8');   
$arr=array(1,0,'4',2,3,4);
if(array_search(4,$arr)!="FALSE"){
	echo "有指定键值";
}else{
	echo "没有指定键值";
}
?>

1.png

2、使用array_keys()函数

array_keys()函数也可以搜索键值,返回对应键名。

但array_keys()会以数组形式返回得到的数组键名。如果没有指定值,则返回的数组是空数组。

<?php
header('content-type:text/html;charset=utf-8');   
$arr=array(1,0,'4',2,3,4);
$key=array_keys($arr,6);
var_dump($key);
if($key!=[]){
	echo "有指定键值";
}else{
	echo "没有指定键值";
}
?>

2.png

修改一下,搜索2

$key=array_keys($arr,2);

3.png


php怎么检测数组是否有某个键值