1
$output = array();
foreach($data as $row) {
if(!isset($output[$row->foo][$row->bar])) {
$output[$row->foo][$row->bar] = 0;
}
$output[$row->foo][$row->bar] += $row->value;
}
有可能使用一些对象来跳过与if(!isset(...))
的一部分吗?
我尝试过载ArrayObject
和offsetGet
方法,但是有一个参考问题,see the php forum。
谢谢,但我正在寻找一种干净的方式,不忽略警告 – leninzprahy
@leninzprahy在这种情况下,你已经做到了。 – Dan