我正在尝试使用array_combine计算值的总和。我也有重复的密钥,例如我有emailid数组和产品价格数组。
$data1 = array("email1@example.com","email2@example.com","email1@example.com");
和$data2 = array("100","200","300");
现在在$data1
我有两个重复的值为email1@example.com
我正在尝试使用array_combine()
它会忽略重复值并添加新值
我得到这个结果
email1@example.com => 300;
email2@example.com => 200;
但我希望结果应该是
email1@example.com => (400)100+300;
email2@example.com => 200;
不确定如何使用array_combine
获得此结果有什么替代方法可以达到此目的吗?
任何建议都会很棒。
答案 0 :(得分:4)
写一个简单的循环:
$result = array();
foreach ($data1 as $i => $v) {
if (!isset($result[$v])) {
$result[$v] = 0;
}
$result[$v] += $data2[$i];
}