两种检测方法:1、使用array_key_exists()检测,语法“array_key_exists(指定键,指定数组)”,如果键存在则返回true,如果键不存在则返回false。2、利用“$数组名["指定键"]”语句访问指定数组元素,再利用isset()函数检测该数组元素是否存在,语法“isset($数组名["指定键"])”,如果键存在则返回TRUE,否则返回FALSE。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
php检测指定键名是否存在于指定数组有两种方法:
-
直接使用array_key_exists()函数
-
使用isset()函数配合“
$指定数组变量名["指定键名"]
”语句
方法1:使用array_key_exists()函数
array_key_exists(指定键名,指定数组)
函数可以检测某个数组中是否存在指定的键名,如果键名存在则返回 true,如果键名不存在则返回 false。
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1=>"1","a"=>"",2=>"2","b"=>0,"c"=>"blue"); var_dump($arr); if (array_key_exists("a", $arr)) { echo "指定键名'a' 存在于指定数组"; } else { echo "指定键名'a'不存在于指定数组"; } ?>
方法2:使用isset()函数配合“数组名["指定键名"]
”语句
-
利用
$指定数组变量名["指定键名"]
访问指定数组元素, -
利用isset() 函数检测该数组元素是否存在
如果存在且不为 NULL,则返回 TRUE,否则返回 FALSE。
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1=>"1","a"=>"",2=>"2","b"=>0,"c"=>"blue"); var_dump($arr); if (isset($arr["d"])) { echo "指定键名'd' 存在于指定数组"; } else { echo "指定键名'd'不存在于指定数组"; } ?>
说明:
-
array_key_exists()
函数检查某个数组中是否存在指定的键名
提示:请记住,如果您指定数组的时候省略了键名,将会生成从 0 开始并以 1 递增的整数键名。
array_key_exists(key,array)
参数 | 描述 |
---|---|
key | 必需。规定键名。 |
array | 必需。规定数组。 |
返回值:如果键名存在则返回 TRUE,如果键名不存在则返回 FALSE。
-
isset()
函数用于检测变量是否已设置并且非 NULL。
如果已经使用 unset() 释放了一个变量之后,再通过 isset() 判断将返回 FALSE。
若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。
同时要注意的是 null 字符("