我需要一个将 2 个数组与计算相结合的新数组
$array1 = array(2,5,7,1);
$array2 = array(1,3,2,5);
结果数组应该输出
$array3 = array(3,8,9,6);
这在 php 中可能吗?我知道 array_merge 函数合并两个数组,但计算后如何合并
笔记 :
这在 C# 中是可能的,但我想知道我也可以用 php 来做
如果保证它们的大小匹配,那么您可以使用类似这样的东西
$array3 = array();
for($x =0; $x<count($array1); $x++){
$array3[] = $array1[$x] + $array2[$x];
}
如果不能保证数组的大小相同,您可以执行以下操作
$array3 = array();
$max = max(count($array1), count($array2));
for($x =0; $x<$max; $x++){
$array3[] = (isset($array1[$x])?$array1[$x]:0)) + (isset($array2[$x])?$array2[$x]:0));
}
随着 PHP 7 和它的null 合并运算符的采用,这段代码变得更具可读性:
$array3 = array();
$max = max(count($array1), count($array2));
for($x =0; $x<$max; $x++){
$array3[] = ($array1[$x] ?? 0) + ($array2[$x] ?? 0);
}
为此,您必须使用foreach循环
<?php
$array1 = array(2,5,7,1);
$array2 = array(1,3,2,5);
$array3= array();
foreach($array1 as $key=>$value)
{
$array3[$key] = $array1[$key]+$array2[$key];
}
print_r($array3)
?>