Let's say I have 3 arrays:
^ array:1 [▼
"london" => array:3 [▼
0 => array:4 [▼
"car" => "audi"
"max_price" => "20000"
"min_price" => "500"
"total" => "500"
]
1 => array:4 [▼
"car" => "bmw"
"max_price" => "50000"
"min_price" => "1000"
"total" => "2000"
]
2 => array:4 [▼
"car" => "mercedez"
"max_price" => "100000"
"min_price" => "5000"
"total" => "50"
]
]
]
^ array:1 [▼
"miami" => array:3 [▼
0 => array:4 [▼
"car" => "bmw"
"max_price" => "12348"
"min_price" => "369"
"total" => "123"
]
1 => array:4 [▼
"car" => "mercedez"
"max_price" => "98888"
"min_price" => "1500"
"total" => "369"
]
2 => array:4 [▼
"car" => "audi"
"max_price" => "1588"
"min_price" => "100"
"total" => "50"
]
]
]
^ array:1 [▼
"roma" => array:3 [▼
0 => array:4 [▼
"car" => "mercedez"
"max_price" => "20000"
"min_price" => "500"
"total" => "500"
]
1 => array:4 [▼
"car" => "bmw"
"max_price" => "50000"
"min_price" => "1000"
"total" => "2000"
]
2 => array:4 [▼
"car" => "audi"
"max_price" => "100000"
"min_price" => "5000"
"total" => "50"
]
]
]
and I want the final output to be:
^ array:3 [▼
"audi" => array:3 [▼
"london" => array:3 [▼
"max_price" => "20000"
"min_price" => "500"
"total" => "500"
]
"miami" => array:3 [▼
"max_price" => "1588"
"min_price" => "100"
"total" => "50"
]
"roma" => array:3 [▼
"max_price" => "100000"
"min_price" => "5000"
"total" => "50"
]
]
"bmw" => array:3 [▼
"london" => array:3 [▼
"max_price" => "50000"
"min_price" => "1000"
"total" => "2000"
]
"miami" => array:3 [▼
"max_price" => "12348"
"min_price" => "369"
"total" => "123"
]
"roma" => array:3 [▼
"max_price" => "50000"
"min_price" => "1000"
"total" => "2000"
]
]
"mercedez" => array:3 [▼
"london" => array:3 [▼
"max_price" => "100000"
"min_price" => "5000"
"total" => "50"
]
"miami" => array:3 [▼
"max_price" => "98888"
"min_price" => "1500"
"total" => "369"
]
"roma" => array:3 [▼
"max_price" => "20000"
"min_price" => "500"
"total" => "500"
]
]
]
So basically I want to merge those arrays and group them by car, not by city. Simple array_merge will not work. I can start with the first array and then loop through all other arrays while generating new arrays, but that seems not efficient. Is there any better option?