次の 2 つの配列があります。
$arr1 = array(1,2,3);
$arr2 = array(0,0,1);
これら 2 つの配列のペアワイズ減算を行う必要があります。arr1 - arr2 の結果は次のようになります。
$arr3 = array(1,2,2)
.
これにFORループを使用する必要がありますか、それとももっと速い方法がありますか?
他の回答に加えて、使用することもできますarray_map()
function sub($x, $y){
return $x - $y;
}
$arr3 = array_map('sub', $arr1, $arr2);
この機能はどうですか?
function array_sub_values($arr1, $arr2)
{
$result = array();
foreach ($arr1 as $k => $val)
$result[] = $val - $arr2[$k];
return $result;
}
したがって、次のことができます。
$arr1 = array(1, 2, 3);
$arr2 = array(0, 0, 1);
$arr3 = array_sub_values($arr1, $arr2);