二维数组变一维数组,统计键值总和

来源:互联网 发布:实体关系图软件 编辑:程序博客网 时间:2024/06/05 13:21
首先我们先写好我们的sql语句,这里我的一个sql是三表联查的一个例子 $sql = "select `order` .*,`info`.goodsnum as snum ,`realtion`.upagentid as upid from ".tablename('表1')." as `order`left join ".tablename('表2')." as `realtion` on `order`.id = `realtion`.orderid left join ".tablename('表3')." as `info` on `order`.id =`info`.orderid where `realtion`.upagentid = $id and `order`.`status` in (2,3) and `order`.addtime >= $start and `order`.addtime < $end ";    $total = pdo_fetchall($sql);        //写一个方法把二维数组变成一维数组        function add_num($total)             {                static $new=array();                 foreach ($total as $k => $v) {                     $new[$v['id']]=$v['snum'];//循环获取二维数组里面的id然后重新放到一个新的数组里面,后面是你想要的那个值                 }                 return $new;              }         $add = add_num($total);         $sum = 0;          //上面处理的一维数组在循环  把键值循环相加         foreach($add as $key=>$value)          {             $sum+= $value;          }          $newtotal = $sum;         $monthaddup = $price*$newtotal;         print_r($monthaddup);