Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 PHP 5.3,需要向不存在的数组元素添加值。
以下是数组可能看起来的示例:
$a[1] = 10; $a[3] = 30;
这是我想做的事情:
$a[2] += 5;
我知道array_fill()。但问题是我不知道最大范围是多少。
现在我有这个:
if (!isset($a[2])) $a[2] = 0; $a[2] += 5;
这可以解决问题,但是,当然,如果在 PHP 中有一种“内置”方法可以做到这一点,我更喜欢这种方法。
没有内置的 php 函数来处理这个问题。你必须使用你已经拥有的东西。您当前的解决方案也很容易阅读,并且完全符合它的意图。
您可以在访问特定索引之前使用 array_replace() 设置默认值:
$a = array(); $a = array_replace(array(2 => 0), $a); $a[2] += 5; var_dump($a); array(1) { [2]=> int(5) }