Как объединить эти два массива?
Array ( [0] => Array ( [id] => 5 [cnt] => 14 ) [1] => Array ( [id] => 8 [cnt] => 2 ) ) Array ( [0] => Array ( [id] => 8 [binding] => hardcover ) [1] => Array ( [id] => 5 [binding] => softcover ) )
Ожидаемый результат:
Array ( [0] => Array ( [id] => 5 [binding] => softcover [cnt] => 14 ) [1] => Array ( [id] => 8 [binding] => hardcover [cnt] => 2 ) )
Слияние этих двух массивов должно происходить по значению [id], а не по любому типу массива. Как я могу сделать это с помощью php в быстром режиме?
$output = array(); $arrayAB = array_merge($arrayA, $arrayB); foreach ( $arrayAB as $value ) { $id = $value['id']; if ( !isset($output[$id]) ) { $output[$id] = array(); } $output[$id] = array_merge($output[$id], $value); } var_dump($output);
Если вы хотите сбросить ключи выхода, просто выполните:
$output = array_values($output);