我有这样的代码:
foreach ($this->dayCounts as $activity => $day) {
foreach ($day as $date => $columns) {
foreach ($columns as $column => $value) {
@$this->totalCounts[$activity][$column] += $value;
}
}
}
基本上,它是将每个 Activity 和每一列的每日值相加以获得总计数。我在这里使用
'@'
运算符不会引发警告。我可以进行任何修改以删除'@'
运算符,因为使用它不是一种好习惯。我收到的错误是带有列和 Activity 名称的
Undefined index
。
最佳答案
警告您的警告可能是由 $ this-> totalCounts 数组中不存在的索引引起的。您可以通过显式初始化此数组的字段来避免它们。
更换
@$this->totalCounts[$activity][$column] += $value;
与
if (!isset($this->totalCounts[$activity][$column])) {
$this->totalCounts[$activity][$column] = 0;
}
$this->totalCounts[$activity] += $value;
关于php - 删除错误抑制运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34415344/