数据库的字段有
id parentid categoryname
1 0 一级分类1
2 0 一级分类2
3 0 一级分类3
4 0 一级分类4
5 1 二级分类1-1
6 1 二级分类1-2
7 2 二级分类2-1
8 2 二级分类2-2
9 3 二级分类3-1
10 4 二级分类4-1
……………………
以上,id即数据的id,parentid为父级的id即所属的一级分类,categoryname为分类名称想拼成以下的格式
[
{
"id": 1, // id值
"disabled": false, // 默认false
"groupName": "一级分类名称", // 一级分类名称
"groupId": 1, //一级分类id
"selected": false, // 默认false
"name": "二级分类名称" // 二级分类名称
},
{
"id": 1,
"disabled": false,
"groupName": "一级分类名称",
"groupId": 1,
"selected": false,
"name": "二级分类名称"
}
// more ...
]
主要是那个groupName不知道啊怎么弄最简洁……,十分感谢
2 回答
江户川乱折腾
TA贡献1851条经验 获得超5个赞
不是特别明白 你想要的json格式, 按照我理解的意思 随手写了一段,并没有测试
$res = $db->table('cate')->where('parentid =0')->select();
$array=array();
foreach ($res as $key =>$val){
$cate = $db->table('cate')->where('parentid ='.$val['id'])->select();
$array[$key]['id']=$cate['id'];
$array[$key]['disabled']=false;
$array[$key]['groupName']=$val['categoryname'];
$array[$key]['groupId']=$val['id'];
$array[$key]['selected']=false;
$array[$key]['name']=$cate['categoryname'];
}
echo json_encode($array);exit;
FFIVE
TA贡献1797条经验 获得超6个赞
$arr = [
['id'=>1,'parentid'=>0,'categoryname'=>'一级分类1'],
['id'=>2,'parentid'=>0,'categoryname'=>'一级分类2'],
['id'=>3,'parentid'=>0,'categoryname'=>'一级分类3'],
['id'=>4,'parentid'=>0,'categoryname'=>'一级分类4'],
['id'=>5,'parentid'=>1,'categoryname'=>'一级分类1-1'],
['id'=>6,'parentid'=>1,'categoryname'=>'一级分类1-2'],
['id'=>7,'parentid'=>2,'categoryname'=>'一级分类2-1'],
['id'=>8,'parentid'=>2,'categoryname'=>'一级分类2-2'],
['id'=>9,'parentid'=>3,'categoryname'=>'一级分类3-1'],
['id'=>10,'parentid'=>4,'categoryname'=>'一级分类4-1'],
];
$a = $b = $c = [];
foreach($arr as $k=>&$v){
if($v['parentid'] === 0) {
$a[$k]['parentid'] = $v['categoryname'];
}elseif($v['parentid'] === 1){
$b[$k]['parentid'] = $v['categoryname'];
}else{
$c[$k]['parentid'] = $v['categoryname'];
}
}
- 2 回答
- 0 关注
- 531 浏览
添加回答
举报
0/150
提交
取消