首页 > 解决方案 > 从另一个数组的键中提取数组值的最简单方法是什么

问题描述

我有两个数组:

$array1 = [1,2,3,4,5,6,7,8,9];
$array2 = [0,1,2,3];

我想根据第二个数组中的值作为键将第一个数组中的值分配给另一个数组。所以不要像这样一个一个地做:

$array3 = [$array1[$array2[0]],$array1[$array2[1]],$array1[$array2[2]],$array1[$array2[3]]];

我试着这样做:

$array3 = [$array1[$array2]];

但我收到以下错误:

Warning: Illegal offset type

我想要得到的是:

Array ( [0] => 1 [1] => 2 [2] => 3  [3] => 4 )

任何想法什么是正确的方法?

标签: phparrays

解决方案


可能有很多方法可以解决这个问题。可能最简单的方法是遍历第二个数组并将第一个数组中的相应值添加到新数组中......

$array3 = [];
foreach ( $array2 as $extract ) {
    $array3[] = $array1 [ $extract ];
}
print_r($array3);

推荐阅读