php – 如何检查数组是否具有指定索引的元素?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 如何检查数组是否具有指定索引的元素?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
知道array_key_exists(),但阅读文档后,我不太确定是否适合这种情况:

我有一个$数组和$索引.现在我想访问$数组,但是不知道它是否具有与$index相匹配的索引.我不是在说一个关联数组,而是一个无聊的普通数字索引数组.

有没有一个安全的方法来弄清楚,如果我真的访问一个$数组元素与给定的$索引(这是一个整数!)?

PHP可能不关心如果我访问一个索引超出边界的数组,也许只是返回NULL,但我不想甚至尝试编码脏,所以我想检查数组是否有键,或不;-)

@H_406_7@
您可以使用语言构造 isset函数 array_key_exists:numeric或string key无关紧要:它仍然是一个关联数组,适用于PHP.

isset应该有点快(因为它不是一个函数),但是如果元素存在并且值为NULL,则返回false.

例如,考虑这个数组:

$a = array(
    123 => 'glop',456 => null,);

而这三个测试,依赖于isset:

var_dump(isset($a[123]));
VAR_dump(isset($a[456]));
var_dump(isset($a[789]));

你会得到这样的输出

boolean true
boolean false
boolean false

因为:

>在第一种情况下,元素存在,并且不为空
>在第二个,但是为null
>而在第三个元素不存在

另一方面,使用array_key_exists就像这部分代码

var_dump(array_key_exists(123,$a));
var_dump(array_key_exists(456,$a));
var_dump(array_key_exists(789,$a));

你会得到这个输出

boolean true
boolean true
boolean false

因为:

>在第一种情况下,元素存在 – 即使在第二种情况下为空>而在第三,它不存在.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 如何检查数组是否具有指定索引的元素?全部内容,希望文章能够帮你解决php – 如何检查数组是否具有指定索引的元素?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。