-4

我知道在 PHP 中可以通过这种方式检查项目是否在数组中:

if( my_array['item_one'] ){ # some code here... }

那是因为如果该项目不是,则返回null值(等于falsezero)。

但它会一直有效吗?这样做总是安全的吗(因为你知道... PHP)?

4

1 回答 1

4

这个成语是个坏主意。首先,如评论中所述,尝试访问数组中不存在的值将产生未知索引错误。其次,更重要的是,0并且FALSE绝对是真实值,但是使用您建议的片段评估指向此类值的键会表现得好像它们不存在一样,这是完全错误的。

长话短说——PHP 有一个很好的工具来检查一个数组是否包含一个键——array_key_exists。没有理由不使用它。

于 2016-09-08T09:06:05.690 回答