PHP foreach 循环使用"&$val" 地址符“&”

  在熟悉项目代码的时候 看到这样的foreach 循环:数组

             foreach($data as &$val){spa

                                     ....it

             }class

  第一次看到循环里面使用了地址符“&”,我印象中的这个符号 是直接取到了这个变量的地址。变量

而后里面的循环操做,相对来讲是高大上了点,好比说下面的例子:foreach

      我如今有一个需求 给一个数组添加一个元素,常常会有这种需求
     商品统计:商品价格、商品销售数量
    需求是 想统计出商品总收入  
循环

     $arr = array( array('price' =>10 , 'count' => 100 ),  array('price' =>20 , 'count' => 90 )  )统计

   不用再用一个新的数组来存放结果 这里直接插入到旧的数组 变成新的数组项目

    foreach ($arr as &$val) {co

          $val['total']=$val['price']*$val['count'];

   }

其实和下面的代码没啥区别:

  foreach ($arr as $k=>$val) {
      $arr[$k]['total']=$val['price']*$val['count'];
   }

可是就以为逼格可能高点。