我想在我的数组中求和:
<?php
if(isset($values[$key])) {
$values[$key] += $total;
} else {
$values[$key] = $total;
}
如果我只写“+=”,我会得到错误“Undefined index”。 你知道更简单的方法吗?因为在长代码上太长了。谢谢
最佳答案
你可以把它缩短一点
<?php
if(!isset($values[$key]))
$values[$key]= 0;
$values[$key] += $total;
但是您编写代码的方式已经非常简洁,更重要的是,非常干净。
edit: 错误首先发生是因为写的时候
$values[$key] += $total;
,在内部它与 $values[$key] = $values[$key] + $total
相同 - 并且当$value[$key]没有首先初始化时,是无法读取的。
PHP 通常假设它是 0 然后抛出“key not defined”-note 来通知程序员他忘记初始化数组的元素。
关于php - 数组和 "undefined index"之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35288615/