<?php
$array = [
[
"id" => "food,Travel",
"names" => "chimpanzee"
],
[
"id" => "food",
"name" => "meeting"
],
[
"id" => "Z1",
"name" => "dynasty"
],
[
"id" => "X",
"name" => "chocolate"
],
[
"id" => "Travel",
"name" => "bananas"
],
[
"id" => "Travel",
"name" => "fantasy"
],
[
"id" => "Travel",
"name" => "football"
]
];
$newarray= [];
foreach($array as $key => $value) {
if(is_array(explode(",", $value["id"]))) {
foreach(explode(",", $value["id"]) as $category) {
$newarray[$category][$key] = $value;
$newarray[$category][$key]["id"] = $category;
}
} else {
$newarray[$value["id"]][$key] = $value;
}
}
var_dump($newarray);
preferences:
27.35 ms | 405 KiB | 5 Q