可以在数组中添加键值



可以按照我的示例在数组中添加键值

$a = array( '1' => '5', '2' => '7', '3' => '1');

现在我将添加更多数组键值,像这样

$b = array( '1' => '5', '2' => '2');

现在我想输出如下相同键

的和
$c = array( '1' => '10', '2' => '9', '3' => '1');

如果我想删除这个数组输出

$c = array( '1' => '7', '2' => '9', '3' => '1');
function array_add($a, $b){
    foreach ($b as $key => $value) {
        if(isset($a[$key]) && is_numeric($a[$key])){
            $a[$key] += $value;
        }
    }
    return $a;
}
function array_subtract($a, $b){
    foreach ($b as $key => $value) {
        if(isset($a[$key]) && is_numeric($a[$key])){
            $a[$key] -= $value;
        }
    }
    return $a;
}

像这样进行减法。

$minus = array('1'=>3);
foreach($minus as $k => $v){
   if(isset($c[$k])){
       $c[$k]-= $v;
   }else{
       $c[$k] = -$v;
   }
}

和这个用于添加:

$add = array('1'=>3);
foreach($add as $k => $v){
   if(isset($add[$k])){
       $c[$k]+= $v;
   }else{
       $c[$k] = $add[$k];
   }
}

当然,您可以将它们包装在函数中,并让它们将新数组设置为不同的内容,以防止覆盖旧数据。

如何"添加"ab:

foreach($a as $key => $value) {
    if(isset($b[$key])) {
        $c[$key] = $a[$key] + $b[$key];
    } else {
        $c[$key] = $a[$key];
    }
}

这将忽略b而不是a中的索引。

相关内容

  • 没有找到相关文章

最新更新