phpstudy|PHP isset 和 array_key_exists 区别

时间:2017-11-19  来源:php常用代码  阅读:

先来看个简单的例子

 代码如下

isset($a["key"])
array_key_exists("key", $a)array_key_exists

确切地告诉你,数组是否存在某个键,而 isset 则只是返回键值是否为 null 的状态。

isset函数是检测变量是否设置。

格式:bool isset ( mixed var [, mixed var [, ...]] )

返回值:

1.若变量不存在则返回 FALSE
2.若变量存在且其值为NULL,也返回 FALSE
3.若变量存在且值不为NULL,则返回 TURE
4.同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE


例1

 代码如下

$a = array("key1" => "123", "key2" => null);

使用这两个方法判断键值存在情况,结果如下:

 代码如下

isset($a["key1"]);             // true
array_key_exists("key1", $a);  // true

isset($a["key2"]);             // false
array_key_exists("key2", $a);  // true

例2

 代码如下

$a = array ("test" => 1, "hello" => NULL);

var_dump( isset ($a["test") ); // TRUE
var_dump( isset ($a["foo") ); // FALSE
var_dump( isset ($a["hello") ); // FALSE

// "hello" 等于 NULL,所以被认为是未赋值的。
// 如果想检测 NULL 键值,可以试试下边的方法。
var_dump( array_key_exists("hello", $a) ); // TRUE

?>

phpstudy|PHP isset 和 array_key_exists 区别

http://m.bbyears.com/jiaocheng/37166.html

推荐访问:phpstorm php面试题 php数组转字符串 php教程
相关阅读 猜你喜欢
本类排行 本类最新