这样的数组 如何创建

WBOY
Release: 2016-06-23 13:41:07
Original
1076 people have browsed it




如何把等于大分类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) "内裤" } 
Copy after login


最终目的是生成 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()			);					}		      				}}
Copy after login




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

参考 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' => '推荐分类',  ),)
Copy after login




二级分类

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' => '内裤',  ),)
Copy after login


参考 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); //打印出来看看,你还有什么需求
Copy after login
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] => 加绒加厚                        )                )        )......
Copy after login
太多了贴不下,意思到了

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

谢了

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template