解决方案 »

  1.   

    兄弟不是提过一次了嘛,可以看看那mysql的ON DUPLICATE KEY UPDATE功能 可以实现合并的 
      

  2.   

    是这个样子嘛? $array = array(
    array('dbno_bi'=>'SE47','A'=>3,'B'=>3,'C'=>'非数字栏位1'),
    array('dbno_bi'=>'DD','A'=>2,'B'=>2,'C'=>'非数字栏位2'),
    array('dbno_bi'=>'F7','A'=>4,'B'=>4,'C'=>'非数字栏位3'),
    array('dbno_bi'=>'SE47','A'=>5,'B'=>5,'C'=>'非数字栏位4'));
    $ST = array('SE47','SE4L','SE42');
    $itmes = array();
    foreach($array as $itm){
    if(!in_array($itm['dbno_bi'],$ST)){
    $itmes[$itm['dbno_bi']] = $itm;
    }else{
    if(isset($itmes[$itm['dbno_bi']])){
    $itmes[$itm['dbno_bi']]['A'] += $itm['A'];
    $itmes[$itm['dbno_bi']]['B'] += $itm['B'];
    }else{
    $itmes[$itm['dbno_bi']] = $itm;
    }
    }
    }
    //结果
    array(3) {
      ["SE47"]=>
      array(4) {
        ["dbno_bi"]=>
        string(4) "SE47"
        ["A"]=>
        int(8)
        ["B"]=>
        int(8)
        ["C"]=>
        string(16) "非数字栏位1"
      }
      ["DD"]=>
      array(4) {
        ["dbno_bi"]=>
        string(2) "DD"
        ["A"]=>
        int(2)
        ["B"]=>
        int(2)
        ["C"]=>
        string(16) "非数字栏位2"
      }
      ["F7"]=>
      array(4) {
        ["dbno_bi"]=>
        string(2) "F7"
        ["A"]=>
        int(4)
        ["B"]=>
        int(4)
        ["C"]=>
        string(16) "非数字栏位3"
      }
    }