大神 急

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-13 11:05:211008검색

大神求助 急...
两个二维数组  
  $cart = arrray(array("id"=1,"num="2"));(session中的array值)

  第一次传  $newcart = arrray(array("id"=1,"num="4");array("id"=2,"num="4"))

  第二次传  $newcart = arrray(array("id"=9,"num="4");array("id"=1,"num="5"))
  
  第三次传  id 是随时变的.... 
  。。。。。


怎么样遍历 使它变成   $cart  = arrray(
                                      [0]=>array("id"=>1,"num"=>10)
                                      [1]=>array("id"=>2,"num"=>4)
                                      [2]=>array("id"=>9,"num"=>5)
                                     )

 怎么就实现   大神求助啊
------解决方案--------------------
没看懂,id为9 的num怎么变成5了。id=1 的也不知道怎么来的。
------解决方案--------------------

<br />$cart    = array(1=>array("id"=>1,"num"=>2),2=>array("id"=>2,"num"=>5));<br />$newcart = array(1=>array("id"=>1,"num"=>4),3=>array("id"=>3,"num"=>4));<br />foreach( $newcart as $k=>$v ){<br /><br />   if( $cart[$v['id']] ){<br />         <br />       $cart[$v['id']]['num'] += $v['num']; <br />     <br />   }<br />   else{<br />      <br />      $cart = array_merge($cart,array($v));<br />     <br />   }<br /><br />}<br />


做购物车最好是用 id作为数组的key,这样对于添加修改删除操作都狠方便。

符号要注意一下  数组指向值是"=>" ,不是"="。
------解决方案--------------------
$cart = array(array("id"=>1,"num"=>2));<br /> <br /> $newcart = array(array("id"=>1,"num"=>4),array("id"=>2,"num"=>4));<br /> foreach($cart as $v) $t[$v['id']]+=$v['num'];<br />  <br /> foreach($newcart as &$v){<br />         $v['num']+=$t[$v['id']];<br /> }<br />$cart =$newcart; <br />print_r($cart);
 

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.