一样平常大家可能立马想到了那个函数——isset。
但是这个是检测变量是否设置的,如果用来检讨数组,可能又会一些副浸染。

学习韶光

实在判断数组的键是否存在,有一个一贯以来的函数 array_key_exists ,检讨给定的键名或索引是否存在于数组中。

比如有下面这个例子:

php判断数组3分钟短文  PHP 断定数组key是否存在你用isset赶紧改 CSS

$key = 'jim';// example 1if (isset($array[$key])) { // ...}// example 2 if (array_key_exists($key, $array)) { // ...}

example 1 与 2 有什么差异吗?到底哪一个性能更好一些?

大略地说,isset 判断键是否存在,同时也判断键存在市价是否为空。
性能当然是快的。
而 array_key_exists 专门用于判断数组键是否存在,纵使传入的值是 NULL,也可以精确实行。
功能更为专一。

我们举一个例子:

$a = array('key1' => 'フーバー', 'key2' => null);isset($a['key1']); // truearray_key_exists('key1', $a); // trueisset($a['key2']); // falsearray_key_exists('key2', $a); // true

对付键 key2,是存在的,而值是null,以是isset 返回了 false,而 array_key_exists 返回了true,后者才是我们想要的结果。

写在末了

看到上面的代码之后,赶紧自查一下你在程序里,还有哪些地方用了 isset 用于判断键是否存在的。
如果不设法主意式跑偏,还是建议更改过来哦。

Happy coding :_)

我是 @程序员小助手 ,持续分享编程知识,欢迎关注。