我有两个数组:
$arr1= array("A","B","C");
$arr2= array("1","2","3");
输出我需要作为:
$arr3= array("A","1","B","2","C","3");
有人能帮忙吗?
如果前两个数组的长度相同,可以使用循环来获得所需的数组:
<?PHP
$arr1= array("A","B","C");
$arr2= array("1","2","3");
$arr3=[];
for($i = 0; $i < count($arr1); $i++)
array_push($arr3, $arr1[$i], $arr2[$i]);
?>
它将返回:
$arr3=数组("A"、"1"、"B"、"2"、"C"、"3")
看看array_merge()
array_merge ( array $array1 [, array $... ] )
将一个或多个数组的元素合并在一起,以便值的一个附加到前一个的末尾。它返回得到的阵列。
如果输入数组具有相同的字符串键,则后面的值因为该键将覆盖上一个。但是,如果数组包含数字键,以后的值不会覆盖原始值值,但将被追加。
这将把两个数组组合在一起:
$output = $array1 + $array2;
如果数组长度不相等,这个片段也可以解决您的问题。
function array_interpolation($arr1, $arr2) {
$result = array();
$len1 = count($arr1);
$len2 = count($arr2);
$maxlen = max($len1, $len2);
for($i = 0; $i < $maxlen; $i++) {
if($i < $len1) {
array_push($result, $arr1[$i]);
}
if($i < $len2) {
array_push($result, $arr2[$i]);
}
}
return $result;
}