可以按照我的示例在数组中添加键值
$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];
}
}
当然,您可以将它们包装在函数中,并让它们将新数组设置为不同的内容,以防止覆盖旧数据。
如何"添加"a
和b
:
foreach($a as $key => $value) {
if(isset($b[$key])) {
$c[$key] = $a[$key] + $b[$key];
} else {
$c[$key] = $a[$key];
}
}
这将忽略b
而不是a
中的索引。