首页  >  文章  >  后端开发  >  帮忙转化一个数组,该怎么处理

帮忙转化一个数组,该怎么处理

WBOY
WBOY原创
2016-06-13 13:15:21704浏览

帮忙转化一个数组
有一个这样结构的数组

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
$arr = array(
    array('goods_id'=>'1','sku_id'=>'001','zk'=>'0.5'),
    array('goods_id'=>'1','sku_id'=>'002','zk'=>'0.5'),
    array('goods_id'=>'1','sku_id'=>'006','zk'=>'0.5'),

    array('goods_id'=>'2','sku_id'=>'003','zk'=>'0.8'),
    array('goods_id'=>'2','sku_id'=>'004','zk'=>'0.8'),
);


转化成
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
$_arr = array(
    '1' =>array(
                'zk'=>'0.5',
                'mx'=>array(
                    array('sku_id'=>'001','zk'=>'0.5'),
                    array('sku_id'=>'002','zk'=>'0.5'),
                    array('sku_id'=>'006','zk'=>'0.5'),
                ),
    '2' =>array(
                'zk'=>'0.8',
                'mx'=>array(
                    array('sku_id'=>'003','zk'=>'0.8'),
                    array('sku_id'=>'004','zk'=>'0.8'),
                ),
    )
);



------解决方案--------------------
PHP code
<?php $arr = array(
    array('goods_id'=>'1','sku_id'=>'001','zk'=>'0.5'),
    array('goods_id'=>'1','sku_id'=>'002','zk'=>'0.5'),
    array('goods_id'=>'1','sku_id'=>'006','zk'=>'0.5'),

    array('goods_id'=>'2','sku_id'=>'003','zk'=>'0.8'),
    array('goods_id'=>'2','sku_id'=>'004','zk'=>'0.8'),
);

foreach($arr as $v){
    $tmp[$v['zk']]['zk']=$v['zk'];
    $tmp[$v['zk']]['mx'][]=array_splice($v,1,2);
}
print_r(array_values($tmp)); <div class="clear">
                 
              
              
        
            </div>
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn