很难给它起一个易于理解的描述性标题,所以我将在这里更深入地尝试。假设我有 4 个不同大小的数组,a1、a2、a3 和 a4,我想将它们组合成数组 SUM。
我希望 SUM[0] 为 a1[0],SUM[1] 为 a2[0],SUM[2] 为 a3[0],SUM[3] 为 a4[0],然后 SUM[4 ] 为 a1[1] 等等。
需要考虑的一件棘手的事情是数组的大小不同。
编辑:如果任何数组 a1,a2,a3,a4 终止,只需移动到下一个 - 抱歉没有说清楚
很难给它起一个易于理解的描述性标题,所以我将在这里更深入地尝试。假设我有 4 个不同大小的数组,a1、a2、a3 和 a4,我想将它们组合成数组 SUM。
我希望 SUM[0] 为 a1[0],SUM[1] 为 a2[0],SUM[2] 为 a3[0],SUM[3] 为 a4[0],然后 SUM[4 ] 为 a1[1] 等等。
需要考虑的一件棘手的事情是数组的大小不同。
编辑:如果任何数组 a1,a2,a3,a4 终止,只需移动到下一个 - 抱歉没有说清楚
$a1=array(1,2,3);
$a2=array(4,5,6,7,8,9);
$a3=array(10,11);
$a4=array(12,13,14,15);
$maxlen = max(count($a1), count($a2), count($a3), count($a4));
$a = array($a1, $a2, $a3, $a4);
$SUM = array();
for ($i = 0; $i < $maxlen; $i++) {
foreach ($a as $arr) {
if (array_key_exists($i, $arr)) {
$SUM[] = $arr[$i];
}
}
}
var_dump($SUM);
输出:
数组(15) { [0]=> int(1) [1]=> int(4) [2]=> int(10) [3]=> int(12) [4]=> int(2) [5]=> int(5) [6]=> int(11) [7]=> int(13) [8]=> int(3) [9]=> int(6) [10]=> int(14) [11]=> int(7) [12]=> int(15) [13]=> int(8) [14]=> int(9) }