У меня есть два массива, один из которых имеет цвет, а другой - фрукты, здесь я хочу объединить, используя соответствующую цветовую ссылку. Как комбинировать, используя ссылку на массив?
$fruits = ['yellow', 'green', 'orange'];
$relatedFurites = [
['yellow'=>'banana', 'green'=>'avacado'],
['yellow'=>'mango', 'green'=> 'chilli']
];
ожидаемый результат с использованием ссылки на массив
$output = [
'yellow'=>['banana', 'mango'],
'green'=>['avacado', 'chilli']];
Спасибо за все предложения.
ваш второй массив кажется неправильным ... невозможно сохранить два разных значения для одного и того же ключа
Привет @ scaisEdge, @ frz3993, я обновил вопрос
Является ли массив фруктов набором всех цветов, которые есть в массиве, или он не имеет отношения к массиву relatedfruits?






Вы можете построить массив $ output, используя вложенный foreach
foreach ( $relatedFurites as $keyFruites => $valueFruites) {
foreach( $valueFruites as $key => $value){
$output[$key][] = $value;
}
}
почему мы не можем использовать здесь ссылку на массив?
Будьте осторожны, в программировании ссылка имеет другое значение.
Если массив $ fruit связан, как я просил в комментариях, вы можете использовать array_column, и вам не придется повторять каждый элемент в массиве.
foreach($fruits as $color){
$output[$color] = array_column($relatedFurites, $color);
}
var_dump($output);
Второй массив var_dump выгрузил? Я уверен, что результат не такой, как вы думаете.