Php 这两种说法有什么不同吗?

Php 这两种说法有什么不同吗?,php,arrays,Php,Arrays,下面是PHP手册中的一条快速评论,讨论了两者之间的关系!但他们做了同样的事情:-\ 说真的,我是个白痴。这里是PHP手册中的一条快速评论,讨论了两者之间的区别!但他们做了同样的事情:-\ 算了,我是个白痴。是的,有区别。如果值为null,则返回false,但不返回: array_key_exists($name, $defaults) isset($defaults[$name]) 因此,您应该始终对数组键使用array\u key\u exists,除非您不想区分数组项是否存在或为null

下面是PHP手册中的一条快速评论,讨论了两者之间的关系!但他们做了同样的事情:-\


说真的,我是个白痴。

这里是PHP手册中的一条快速评论,讨论了两者之间的区别!但他们做了同样的事情:-\


算了,我是个白痴。

是的,有区别。如果值为null,则返回false,但不返回:

array_key_exists($name, $defaults)

isset($defaults[$name])

因此,您应该始终对数组键使用
array\u key\u exists
,除非您不想区分数组项是否存在或为null。

是的,存在差异。如果值为null,则返回false,但不返回:

array_key_exists($name, $defaults)

isset($defaults[$name])

因此,您应该始终对数组键使用
array\u key\u exists
,除非您不想区分数组项是否存在或是否为null。

不,它们不会做相同的事情:
isset
在定义值时将返回
false
,但
null
<另一方面,code>array_key_exists,将返回
true
;;;参见示例#2上的注释:不,它们做的事情不同:
isset
在定义值时将返回
false
,但
null
<另一方面,code>array_key_exists,将返回
true
;;;参见示例2的注释: