PHP数组计算

时间:2016-09-22 12:42:23

标签: php

Array
(
    [pid] => 877
    [encounter] => 15342
    [fee] => 300.00
)
Array
(
    [pid] => 877
    [encounter] => 15342
    [fee] => 300.00
)
Array
(
    [pid] => 1422
    [encounter] => 15332
    [fee] => 600.00
)
Array
(
    [pid] => 690
    [encounter] => 15335
    [fee] => 0.00
)
Array
(
    [pid] => 690
    [encounter] => 15335
    [fee] => 276.30
)
Array
(
    [pid] => 690
    [encounter] => 15335
    [fee] => 0.00
)
Array
(
    [pid] => 690
    [encounter] => 15335
    [fee] => 0.00
)
Array
(
    [pid] => 690
    [encounter] => 15338
    [fee] => 400.00
)

代码

$test_cnt = 0; 
test_encounter_pid = array(); 
foreach($provInnrArr as $dataDispArr){ 
    $test_encounter_pid['pid'] = $dataDispArr['pid']; 
    $test_encounter_pid['encounter'] = $dataDispArr['encounter']; 
    $test_encounter_pid['fee'] = $dataDispArr['fee']; 
    if (in_array($dataDispArr["encounter"], $test_encounter_pid)) { 
        $test_cnt += $dataDispArr['fee']; 
    } 
}

你好朋友,上面是我的数组我正在尝试只有当pid和遭遇不同时,才能汇总所有数组费用关键值 我得到1,876.30总计但实际我的需要是1,576.30 因为300额外添加第二个数组值。我没有得到如何解决它。

1 个答案:

答案 0 :(得分:1)

试试这个,

foreach($array as $val){

if($val['pid'] != "0"){
  if (!in_array($val['pid'], $temp_array))
  {
     $temp_array[] = $val['pid'];
     $total += $val['fee'];
  }
}

echo $total;  

<强> DEMO