所以我有两个单独的数组。一个具有目标的ID,另一个具有目标的名称。两者都是按字母顺序排列的。
示例:
$array[1] => Array
(
[0] => 113139803806479652682
[1] => 100276549585470687394
)
和
$array[2] => Array
(
[0] => EDM
[1] => Space
)
所以在$ array [1]中,[0]中的[0]是“EDM”的ID(如$ array [2]中所示),然后$ array [1]中的[1]是“空间”。
我想要实现的是输出一个如下所示的新数组:
[0] => Array
(
[0] => 113139803806479652682
[1] => EDM
)
[1] => Array
(
[0] => 100276549585470687394
[1] => Space
)
基本上是一个新的数组,它返回一个多维数组,其ID和名称在同一个数组中,取自两个已经按顺序排列名称和ID的sepearte数组,只是我希望它们形成所以它们组合在一起。 / p>
我希望这是有道理的。我对PHP和编码很新。
答案 0 :(得分:0)
$results = [];
foreach($array1 as $key => $value) {
$results[$key] = [$array1[$key],$array2[$key]];
}
答案 1 :(得分:0)
$newarray=array();
foreach($array1 as $k=>$val){
$newarray[$k]['ID'] = $val;
$newarray[$k]['name'] = $array2[$k];
}
答案 2 :(得分:0)
这可能不是最优雅的解决方案,但它可以解决问题。代码如下:
$arraySum = array();
for($i=0; $i<count($array1); $i++) {
$arraySum[$i][$i] = $array1[$i];
$arraySum[$i][$i+1] = $array2[$i];
}
答案 3 :(得分:0)
通过使用array_map()
回调参数和null
上的“ splat运算符”调用$array
来将其“解压缩”为多个一维输入数组,您可以巧妙地生成自己的简洁的一列式即可获得所需的,重新索引的输出数组。
代码:(Demo)
$array[1] = [
'113139803806479652682',
'100276549585470687394'
];
$array[2] = [
'EDM',
'Space'
];
var_export(array_map(null, ...$array));
输出:
array (
0 =>
array (
0 => '113139803806479652682',
1 => 'EDM',
),
1 =>
array (
0 => '100276549585470687394',
1 => 'Space',
),
)