一、array_key_exists()
array_key_exists() 函数用于判断一个数组是否存在指定的键名,如果存在返回 true,否则返回 false。下面是该函数的语法:
bool array_key_exists ( mixed $key , array $array )
其中,$key 表示要判断的键名,$array 表示要判断的数组。
下面是一个例子:
$arr = array('a' => 1, 'b' => 2, 'c' => 3);if (array_key_exists('a', $arr)) { echo '存在';} else { echo '不存在';}
输出结果为:存在
二、isset()
isset() 函数用于判断一个变量是否已经声明并且赋值,如果是返回 true,否则返回 false。在判断数组时,如果指定的元素值为 null,isset() 函数会返回 false。下面是该函数的语法:
bool isset ( mixed $var [, mixed $... ] )
在判断数组元素时,可以用以下两种方式:
使用 isset() 函数直接判断元素是否存在,如下所示:$arr = array('a' => 1, 'b' => null, 'c' => 3);if (isset($arr['a'])) { echo '存在';} else { echo '不存在';}
输出结果为:存在
if (isset($arr['b'])) { echo '存在';} else { echo '不存在';}
输出结果为:不存在
先使用 array_key_exists() 函数判断元素是否存在,再用 isset() 函数判断元素的值是否为 null,如下所示:$arr = array('a' => 1, 'b' => null, 'c' => 3);if (array_key_exists('a', $arr) && isset($arr['a'])) { echo '存在';} else { echo '不存在';}
输出结果为:存在
if (array_key_exists('b', $arr) && isset($arr['b'])) { echo '存在';} else { echo '不存在';}
输出结果为:不存在
总结
以上就是 php 判断数组是否有值的方法,可以根据自己的需求进行选择。在实际开发中,建议使用 isset() 函数判断数组元素是否存在,因为该函数判断速度快,而且可以防止出现 undefined index 的错误。当然,在判断某个键是否存在时,可以使用 array_key_exists() 函数。
以上就是php怎么判断数组是否有值的详细内容。
