Home  >  Article  >  Backend Development  >  这样的数组 如何创建

这样的数组 如何创建

WBOY
WBOYOriginal
2016-06-23 13:41:071077browse




如何把等于大分类ID的对应小分类写入 subCats
array(
id=>"$Xhref.....",
name=>"$Xtext....",
)

$dafenleishu=count($Dhref);
$xiaofenleishu=count($Xhref);

for ($x=1;$x        $cats[]=array(
id=>"$Dhref[$x]",
name=>"$Dtext[$x]",
subCats=>array()
 );

}


$Dhref    //大分类ID

$Dtext    //大分类名称

$Xhref   //小分类ID

$XID_D    //小分类对应大分类ID

$Xtext   //小分类名称


输出



大分类IDarray(14) { [0]=> string(9) "sidengny." [1]=> string(9) "907362758" [2]=> string(9) "907362759" [3]=> string(9) "907362764" [4]=> string(9) "907362775" [5]=> string(9) "907362795" [6]=> string(9) "907362787" [7]=> string(9) "907362784" [8]=> string(9) "907363605" [9]=> string(9) "907363606" [10]=> string(9) "907363607" [11]=> string(9) "907363608" [12]=> string(9) "907363609" [13]=> string(9) "100563948" } 大分类名称array(14) { [0]=> string(8) "所有宝贝" [1]=> string(8) "新品专区" [2]=> string(8) "保暖上装" [3]=> string(8) "保暖套装" [4]=> string(6) "保暖裤" [5]=> string(8) "内裤系列" [6]=> string(8) "袜类专区" [7]=> string(8) "背心-T恤" [8]=> string(8) "运动文胸" [9]=> string(8) "清仓专区" [10]=> string(8) "男士专区" [11]=> string(8) "女士专区" [12]=> string(8) "送礼专区" [13]=> string(8) "推荐分类" } 小分类IDarray(37) { [0]=> string(9) "sidengny." [1]=> string(9) "sidengny." [2]=> string(9) "sidengny." [3]=> string(9) "sidengny." [4]=> string(9) "907362760" [5]=> string(9) "907362761" [6]=> string(9) "907362762" [7]=> string(9) "907362763" [8]=> string(9) "907362765" [9]=> string(9) "907362766" [10]=> string(9) "907362767" [11]=> string(9) "907362768" [12]=> string(9) "907362769" [13]=> string(9) "907362770" [14]=> string(9) "907362771" [15]=> string(9) "907362772" [16]=> string(9) "907419493" [17]=> string(9) "907362776" [18]=> string(9) "907362778" [19]=> string(9) "907362796" [20]=> string(9) "907362797" [21]=> string(9) "907362799" [22]=> string(9) "907363601" [23]=> string(9) "907363603" [24]=> string(9) "907363604" [25]=> string(9) "907362788" [26]=> string(9) "907362789" [27]=> string(9) "907362790" [28]=> string(9) "907362791" [29]=> string(9) "907362792" [30]=> string(9) "907362793" [31]=> string(9) "907362794" [32]=> string(9) "907362785" [33]=> string(9) "100563948" [34]=> string(9) "100563948" [35]=> string(9) "100563948" [36]=> string(9) "100563948" } 对应上级大分类IDarray(37) { [0]=> string(9) "engny.tma" [1]=> string(9) "engny.tma" [2]=> string(9) "engny.tma" [3]=> string(9) "engny.tma" [4]=> string(9) "907362759" [5]=> string(9) "907362759" [6]=> string(9) "907362759" [7]=> string(9) "907362759" [8]=> string(9) "907362764" [9]=> string(9) "907362764" [10]=> string(9) "907362764" [11]=> string(9) "907362764" [12]=> string(9) "907362764" [13]=> string(9) "907362764" [14]=> string(9) "907362764" [15]=> string(9) "907362764" [16]=> string(9) "907362764" [17]=> string(9) "907362775" [18]=> string(9) "907362775" [19]=> string(9) "907362795" [20]=> string(9) "907362795" [21]=> string(9) "907362795" [22]=> string(9) "907362795" [23]=> string(9) "907362795" [24]=> string(9) "907362795" [25]=> string(9) "907362787" [26]=> string(9) "907362787" [27]=> string(9) "907362787" [28]=> string(9) "907362787" [29]=> string(9) "907362787" [30]=> string(9) "907362787" [31]=> string(9) "907362787" [32]=> string(9) "907362784" [33]=> string(9) "100563948" [34]=> string(9) "100563948" [35]=> string(9) "100563948" [36]=> string(9) "100563948" } 小分类名称array(37) { [0]=> string(6) "按综合" [1]=> string(6) "按销量" [2]=> string(6) "按新品" [3]=> string(6) "按价格" [4]=> string(16) "假两件(衬衫领)" [5]=> string(7) "V领上装" [6]=> string(8) "商务休闲" [7]=> string(8) "时尚居家" [8]=> string(8) "男士套装" [9]=> string(8) "女士套装" [10]=> string(12) "基础打底内衣" [11]=> string(8) "加绒加厚" [12]=> string(8) "全棉内衣" [13]=> string(8) "羊毛内衣" [14]=> string(8) "驼绒内衣" [15]=> string(8) "莱卡内衣" [16]=> string(6) "本命年" [17]=> string(10) "薄款打底裤" [18]=> string(8) "加绒加厚" [19]=> string(8) "男士内裤" [20]=> string(8) "女士内裤" [21]=> string(6) "平角裤" [22]=> string(8) "植物纤维" [23]=> string(6) "星期裤" [24]=> string(6) "礼盒装" [25]=> string(4) "棉袜" [26]=> string(4) "丝袜" [27]=> string(6) "全棉袜" [28]=> string(8) "精梳棉袜" [29]=> string(8) "春秋棉袜" [30]=> string(8) "夏季透气" [31]=> string(8) "冬季加厚" [32]=> string(12) "男士背心-T恤" [33]=> string(8) "热卖推荐" [34]=> string(8) "套装推荐" [35]=> string(10) "衬衫领推荐" [36]=> string(4) "内裤" } 


最终目的是生成 json

"data": {
        "cats": [
            {
                "id": "907362758",
                "name": "新品专区",
                "subCats": []
            },
            {
                "id": "907362759",
                "name": "保暖上装",
                "subCats": [
                    {
                        "id": "907362760",
                        "name": "假两件(衬衫领)"
                    },
                    {
                        "id": "907362761",
                        "name": "V领上装"
                    },
                    {
                        "id": "907362762",
                        "name": "商务休闲"
                    },
                    {
                        "id": "907362763",
                        "name": "时尚居家"
                    }
                ]
            },
            {


回复讨论(解决方案)

for ($x=1;$x<=$dafenleishu-1;$x++) {	for ($y=4;$y<=$xiaofenleishu-4;$y++) {				if ($XID_D[$x]==$Dhref[$y]) {			$cats[$x]=array(							id=>"$Dhref[$x]",							name=>"$Dtext[$x]",      											subCats=>$subCats[$y]= array(									id=>"$Xhref[$y]",									name=>"$Xtext[$y]",			)							 );		}else{			$cats[$x]=array(					id=>"$Dhref[$x]",					name=>"$Dtext[$x]",					subCats=>$subCats[]= array()			);					}		      				}}




这样好像也不行  求大神解答

参考  http://bbs.csdn.net/topics/370094009

如果你希望我们替你完成,那么请贴出原始数据的 var_export 的结果

谢大神 继续学习, 感觉那个是我需要的,   尽量自己解决 不行的话在发,  主要目的还是学


一级分类

array (  0 =>   array (    'id' => '907362758',    'name' => '新品专区',  ),  1 =>   array (    'id' => '907362759',    'name' => '保暖上装',  ),  2 =>   array (    'id' => '907362764',    'name' => '保暖套装',  ),  3 =>   array (    'id' => '907362775',    'name' => '保暖裤',  ),  4 =>   array (    'id' => '907362795',    'name' => '内裤系列',  ),  5 =>   array (    'id' => '907362787',    'name' => '袜类专区',  ),  6 =>   array (    'id' => '907362784',    'name' => '背心-T恤',  ),  7 =>   array (    'id' => '907363605',    'name' => '运动文胸',  ),  8 =>   array (    'id' => '907363606',    'name' => '清仓专区',  ),  9 =>   array (    'id' => '907363607',    'name' => '男士专区',  ),  10 =>   array (    'id' => '907363608',    'name' => '女士专区',  ),  11 =>   array (    'id' => '907363609',    'name' => '送礼专区',  ),  12 =>   array (    'id' => '100563948',    'name' => '推荐分类',  ),)




二级分类

array (  0 =>   array (    'id' => '907362760',    'Did' => '907362759',    'name' => '假两件(衬衫领)',  ),  1 =>   array (    'id' => '907362761',    'Did' => '907362759',    'name' => 'V领上装',  ),  2 =>   array (    'id' => '907362762',    'Did' => '907362759',    'name' => '商务休闲',  ),  3 =>   array (    'id' => '907362763',    'Did' => '907362759',    'name' => '时尚居家',  ),  4 =>   array (    'id' => '907362765',    'Did' => '907362764',    'name' => '男士套装',  ),  5 =>   array (    'id' => '907362766',    'Did' => '907362764',    'name' => '女士套装',  ),  6 =>   array (    'id' => '907362767',    'Did' => '907362764',    'name' => '基础打底内衣',  ),  7 =>   array (    'id' => '907362768',    'Did' => '907362764',    'name' => '加绒加厚',  ),  8 =>   array (    'id' => '907362769',    'Did' => '907362764',    'name' => '全棉内衣',  ),  9 =>   array (    'id' => '907362770',    'Did' => '907362764',    'name' => '羊毛内衣',  ),  10 =>   array (    'id' => '907362771',    'Did' => '907362764',    'name' => '驼绒内衣',  ),  11 =>   array (    'id' => '907362772',    'Did' => '907362764',    'name' => '莱卡内衣',  ),  12 =>   array (    'id' => '907419493',    'Did' => '907362764',    'name' => '本命年',  ),  13 =>   array (    'id' => '907362776',    'Did' => '907362775',    'name' => '薄款打底裤',  ),  14 =>   array (    'id' => '907362778',    'Did' => '907362775',    'name' => '加绒加厚',  ),  15 =>   array (    'id' => '907362796',    'Did' => '907362795',    'name' => '男士内裤',  ),  16 =>   array (    'id' => '907362797',    'Did' => '907362795',    'name' => '女士内裤',  ),  17 =>   array (    'id' => '907362799',    'Did' => '907362795',    'name' => '平角裤',  ),  18 =>   array (    'id' => '907363601',    'Did' => '907362795',    'name' => '植物纤维',  ),  19 =>   array (    'id' => '907363603',    'Did' => '907362795',    'name' => '星期裤',  ),  20 =>   array (    'id' => '907363604',    'Did' => '907362795',    'name' => '礼盒装',  ),  21 =>   array (    'id' => '907362788',    'Did' => '907362787',    'name' => '棉袜',  ),  22 =>   array (    'id' => '907362789',    'Did' => '907362787',    'name' => '丝袜',  ),  23 =>   array (    'id' => '907362790',    'Did' => '907362787',    'name' => '全棉袜',  ),  24 =>   array (    'id' => '907362791',    'Did' => '907362787',    'name' => '精梳棉袜',  ),  25 =>   array (    'id' => '907362792',    'Did' => '907362787',    'name' => '春秋棉袜',  ),  26 =>   array (    'id' => '907362793',    'Did' => '907362787',    'name' => '夏季透气',  ),  27 =>   array (    'id' => '907362794',    'Did' => '907362787',    'name' => '冬季加厚',  ),  28 =>   array (    'id' => '907362785',    'Did' => '907362784',    'name' => '男士背心-T恤',  ),  29 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '热卖推荐',  ),  30 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '套装推荐',  ),  31 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '衬衫领推荐',  ),  32 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '内裤',  ),)


参考  http://bbs.csdn.net/topics/370094009

如果你希望我们替你完成,那么请贴出原始数据的 var_export 的结果




没搞定大神求解决

//一级分类$a = array (  0 =>   array (    'id' => '907362758',    'name' => '新品专区',  ),  1 =>   array (    'id' => '907362759',    'name' => '保暖上装',  ),  2 =>   array (    'id' => '907362764',    'name' => '保暖套装',  ),  3 =>   array (    'id' => '907362775',    'name' => '保暖裤',  ),  4 =>   array (    'id' => '907362795',    'name' => '内裤系列',  ),  5 =>   array (    'id' => '907362787',    'name' => '袜类专区',  ),  6 =>   array (    'id' => '907362784',    'name' => '背心-T恤',  ),  7 =>   array (    'id' => '907363605',    'name' => '运动文胸',  ),  8 =>   array (    'id' => '907363606',    'name' => '清仓专区',  ),  9 =>   array (    'id' => '907363607',    'name' => '男士专区',  ),  10 =>   array (    'id' => '907363608',    'name' => '女士专区',  ),  11 =>   array (    'id' => '907363609',    'name' => '送礼专区',  ),  12 =>   array (    'id' => '100563948',    'name' => '推荐分类',  ),);//二级分类$b = array (  0 =>   array (    'id' => '907362760',    'Did' => '907362759',    'name' => '假两件(衬衫领)',  ),  1 =>   array (    'id' => '907362761',    'Did' => '907362759',    'name' => 'V领上装',  ),  2 =>   array (    'id' => '907362762',    'Did' => '907362759',    'name' => '商务休闲',  ),  3 =>   array (    'id' => '907362763',    'Did' => '907362759',    'name' => '时尚居家',  ),  4 =>   array (    'id' => '907362765',    'Did' => '907362764',    'name' => '男士套装',  ),  5 =>   array (    'id' => '907362766',    'Did' => '907362764',    'name' => '女士套装',  ),  6 =>   array (    'id' => '907362767',    'Did' => '907362764',    'name' => '基础打底内衣',  ),  7 =>   array (    'id' => '907362768',    'Did' => '907362764',    'name' => '加绒加厚',  ),  8 =>   array (    'id' => '907362769',    'Did' => '907362764',    'name' => '全棉内衣',  ),  9 =>   array (    'id' => '907362770',    'Did' => '907362764',    'name' => '羊毛内衣',  ),  10 =>   array (    'id' => '907362771',    'Did' => '907362764',    'name' => '驼绒内衣',  ),  11 =>   array (    'id' => '907362772',    'Did' => '907362764',    'name' => '莱卡内衣',  ),  12 =>   array (    'id' => '907419493',    'Did' => '907362764',    'name' => '本命年',  ),  13 =>   array (    'id' => '907362776',    'Did' => '907362775',    'name' => '薄款打底裤',  ),  14 =>   array (    'id' => '907362778',    'Did' => '907362775',    'name' => '加绒加厚',  ),  15 =>   array (    'id' => '907362796',    'Did' => '907362795',    'name' => '男士内裤',  ),  16 =>   array (    'id' => '907362797',    'Did' => '907362795',    'name' => '女士内裤',  ),  17 =>   array (    'id' => '907362799',    'Did' => '907362795',    'name' => '平角裤',  ),  18 =>   array (    'id' => '907363601',    'Did' => '907362795',    'name' => '植物纤维',  ),  19 =>   array (    'id' => '907363603',    'Did' => '907362795',    'name' => '星期裤',  ),  20 =>   array (    'id' => '907363604',    'Did' => '907362795',    'name' => '礼盒装',  ),  21 =>   array (    'id' => '907362788',    'Did' => '907362787',    'name' => '棉袜',  ),  22 =>   array (    'id' => '907362789',    'Did' => '907362787',    'name' => '丝袜',  ),  23 =>   array (    'id' => '907362790',    'Did' => '907362787',    'name' => '全棉袜',  ),  24 =>   array (    'id' => '907362791',    'Did' => '907362787',    'name' => '精梳棉袜',  ),  25 =>   array (    'id' => '907362792',    'Did' => '907362787',    'name' => '春秋棉袜',  ),  26 =>   array (    'id' => '907362793',    'Did' => '907362787',    'name' => '夏季透气',  ),  27 =>   array (    'id' => '907362794',    'Did' => '907362787',    'name' => '冬季加厚',  ),  28 =>   array (    'id' => '907362785',    'Did' => '907362784',    'name' => '男士背心-T恤',  ),  29 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '热卖推荐',  ),  30 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '套装推荐',  ),  31 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '衬衫领推荐',  ),  32 =>   array (    'id' => '100563948',    'Did' => '100563948',    'name' => '内裤',  ),);//抄写并格式化一级分类 到 $resforeach($a as $v) {  $v['subCats'] = array();  $res[$v['id']] = $v;}//遍历二级分类,填写到对应的一级分类中foreach($b as $v) {  $res[$v['Did']]['subCats'][] = $v;}print_r($res); //打印出来看看,你还有什么需求
Array(    [907362758] => Array        (            [id] => 907362758            [name] => 新品专区            [subCats] => Array                (                )        )    [907362759] => Array        (            [id] => 907362759            [name] => 保暖上装            [subCats] => Array                (                    [0] => Array                        (                            [id] => 907362760                            [Did] => 907362759                            [name] => 假两件(衬衫领)                        )                    [1] => Array                        (                            [id] => 907362761                            [Did] => 907362759                            [name] => V领上装                        )                    [2] => Array                        (                            [id] => 907362762                            [Did] => 907362759                            [name] => 商务休闲                        )                    [3] => Array                        (                            [id] => 907362763                            [Did] => 907362759                            [name] => 时尚居家                        )                )        )    [907362764] => Array        (            [id] => 907362764            [name] => 保暖套装            [subCats] => Array                (                    [0] => Array                        (                            [id] => 907362765                            [Did] => 907362764                            [name] => 男士套装                        )                    [1] => Array                        (                            [id] => 907362766                            [Did] => 907362764                            [name] => 女士套装                        )                    [2] => Array                        (                            [id] => 907362767                            [Did] => 907362764                            [name] => 基础打底内衣                        )                    [3] => Array                        (                            [id] => 907362768                            [Did] => 907362764                            [name] => 加绒加厚                        )                    [4] => Array                        (                            [id] => 907362769                            [Did] => 907362764                            [name] => 全棉内衣                        )                    [5] => Array                        (                            [id] => 907362770                            [Did] => 907362764                            [name] => 羊毛内衣                        )                    [6] => Array                        (                            [id] => 907362771                            [Did] => 907362764                            [name] => 驼绒内衣                        )                    [7] => Array                        (                            [id] => 907362772                            [Did] => 907362764                            [name] => 莱卡内衣                        )                    [8] => Array                        (                            [id] => 907419493                            [Did] => 907362764                            [name] => 本命年                        )                )        )    [907362775] => Array        (            [id] => 907362775            [name] => 保暖裤            [subCats] => Array                (                    [0] => Array                        (                            [id] => 907362776                            [Did] => 907362775                            [name] => 薄款打底裤                        )                    [1] => Array                        (                            [id] => 907362778                            [Did] => 907362775                            [name] => 加绒加厚                        )                )        )......
太多了贴不下,意思到了

纠结了一下午的事情,让你俩行代码解决了

谢了

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn