如何通过使用PHP使用数组引用将两个数组合并为一个?

时间:2018-07-01 18:16:24

标签: php arrays multidimensional-array

我有两个数组,一个数组有颜色,另一个数组有水果,在这里我想使用匹配的颜色参考进行组合。 如何使用数组引用进行组合?

$fruits = ['yellow', 'green', 'orange'];


$relatedFurites = [
['yellow'=>'banana', 'green'=>'avacado'],
['yellow'=>'mango', 'green'=> 'chilli']

];

通过使用数组引用获得预期的输出

$output = [
    'yellow'=>['banana', 'mango'],
    'green'=>['avacado', 'chilli']];

感谢所有建议。

2 个答案:

答案 0 :(得分:1)

如果$ fruits数组与我在注释中所要求的相关,则可以使用array_column,而不必迭代数组中的每个项目。

foreach($fruits as $color){
    $output[$color] = array_column($relatedFurites, $color);
}
var_dump($output);

this answer

答案 1 :(得分:0)

您可以使用嵌套的foreach构建$ output数组

foreach ( $relatedFurites as $keyFruites => $valueFruites) {
  foreach( $valueFruites as $key => $value){
    $output[$key][] = $value;
  }

}