3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ ['data1' => ['value1' => 1, 'value2' => 2]], ['data2' => ['value5' => 5, 'value6' => 6]], ['data1' => ['value3' => 3, 'value4' => 4]], ]; $result = []; foreach ($array as $set) { foreach ($set as $k => $row) { if (!isset($ref[$k])) { $ref[$k] = $set; $result[] =& $ref[$k]; continue; } $ref[$k][$k] += $row; } } var_export($result);

preferences:
27.93 ms | 404 KiB | 5 Q