ホームページ  >  記事  >  バックエンド開発  >  配列の変換とその処理方法のヘルプ

配列の変換とその処理方法のヘルプ

WBOY
WBOYオリジナル
2016-06-13 13:15:21704ブラウズ

配列
のような構造を持つ配列があります

PHP コード
<!--

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 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 コード
<?php
$arr = 配列(
    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 までご連絡ください。
前の記事:PHP開発前の準備次の記事:PHP開発前の準備