【问题标题】:PHP array_key_exists with numeric keysPHP array_key_exists 带有数字键
【发布时间】:2016-10-07 18:04:12
【问题描述】:

我在 PHP 中使用索引号而不是字母数字键加载数组。该数组可以包含 0 到 100 个条目,具体取决于数据。数组从0-100依次加载。

但是,为了执行所需的处理,数组中必须至少有 13 个条目。如果没有 13 个条目,则进行一些其他处理。

所以,这是用于查看第 13 个数组项是否有值的正确格式......还是需要在 12 周围加上单引号?

If ( !array_key_exists(12,$array) ) {
.........
}

我还假设如果 $array[12] 尚未创建并赋予值,则使用 isset 会给我一个错误......即:

If ( !isset($array[12]) ) {
..........
}

编辑:我之前只使用过这个,但不确定在什么条件下它会是真/假。

If ( !$array[12] ) {
...........
}

【问题讨论】:

    标签: arrays key exists


    【解决方案1】:

    您可能需要考虑使用 php 的 empty() 函数来测试变量是否存在。

    if ( empty($array[12] ) {
    .....
    }
    

    【讨论】:

    • 谢谢!.....但是 $array[12] 要么有一些价值,要么根本不存在。它永远不会存在并且为空/null/whatever.. 如果数组项不存在,empty() 会返回 false 吗?......z
    • 我的意思是如果 empty($array{12]) 不存在,它会返回 True 吗?
    • 我相信如果数组项不存在,empty() 确实会返回 True。
    • 使用 empty() 优于 isset() 有什么好处?
    猜你喜欢
    • 2011-01-04
    • 1970-01-01
    • 1970-01-01
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多