考虑我有N个这样的数组
array(3) { [0]=>"XXX" [1]=>"YYY" [2]=>"ZZZ" }
array(3) { [0]=>"1" [1]=>"2" [2]=>"3" }
array(3) { [0]=>"present" [1]=> "present" [2]=>"absent" }
如何将这些数组的键值合并到一个新数组中。即它看起来应该是这样的
array(3) {[0]=>"XXX" [1]=>"1" [2]=>"present"}
array(3) {[0]=>"YYY" [1]=>"2" [2]=>"present"}
array(3) {[0]=>"ZZZ" [1]=>"3" [2]=>"absent"}
答案 0 :(得分:0)
所以你有3个阵列,想要将第一个值相互组合,彼此相互组合,等等?
<?php
$loops = count($array1);
$newArray = array();
for($i = 0; $i < $loops; $i++){
$newArray[] = array($array1[$i], $array2[$i], $array3[$i]);
}
var_dump($newArray();
?>
你也可以动态地(对于无数个数组)这样做:
<?php
$loops = count($arrayCollection[0]);
$arrayCount = count($arrayCollection);
$newArray = array();
for($i = 0; $i < $loops; $i++){
$data = array();
for($x = 0; $x < $arrayCount; $x++){
$data = $arrayCollection[$x][$i]
}
$newArray[] = $data;
}
var_dump($newArray();
?>
我刚刚看到您对表单中数据的评论。我觉得我应该通知你,如果表单上的任何字段都是空的,那么数组的整个顺序就会搞乱,这样的函数根本不可能。您必须 100%确定您的数据以正确的方式排序。