<?php
$array1 = array(
0 => array(
2 => array(
"type" => 1,
"score" => 10,
),
),
1 => array(
2 => array(
"type" => 2,
"score" => 5,
),
),
2 => array(
2 => array(
"type" => 3,
"score" => 4,
),
),
3 => array(
2 => array(
"type" => 4,
"score" => 60,
),
),
4 => array(
1 => array(
"type" => 1,
"score" => 5,
),
),
);
$array2 = array(0 => 2, 1 => 1);
$array3 = array(
2 => array(
"score" => 79
),
1 => array(
"score" => 5
),
);
foreach( $array1 as $array1x ){
$key=key($array1x);
if( in_array($key, $array2) ){
$this_score = $array1x[$key]['score'];
$cum_score = isset($newarray[$key]['score']) ? $newarray[$key]['score'] : 0;
$newarray[$key]['score'] = $cum_score + $this_score;
}
}
print_r($newarray);
preferences:
28 ms | 402 KiB | 5 Q