把两段代码组合上去。因为最后输出的是 ``
public function menu_sec($menu_id)
{
$account = session('adminAccount');
$username = $account['username'];
$userid = $account['userid'];
//提取前台请求值menu_id
// $menu_id=input('menu_id');
// $menu_id='0100';
//查询所有父级目录英文名
$menuData = Db::name('menu')->field('menu_enname')->
where('parent_id', '=', $menu_id)->
where('')->select();
//二级目录的数量
$menuDataCount = Db::name('menu')->where('parent_id', '=', $menu_id)->count();
//根据数量进行循环
$b=0;
for ($i = 0; $i < $menuDataCount; $i++) {
//提取目录英文名到变量
$menu_ennameData = $menuData[$i]['menu_enname'];
//根据英文名和userid查询本英文名的对应的值
$menuLimitsData = Db::name('menu_limits')->field($menu_ennameData)->
where('userid', '=', $userid)->select();
//将查询到的值提取给变量
$number = $menuLimitsData[0][$menu_ennameData];
//如果值是1则说明有权限,进而根据英文名到menu表查询对应的其他数据
if ($number == 1) {
$menu_cnnameData = Db::name('menu')->
where('menu_enname', '=', $menu_ennameData)->select();
//将查询到的数据组合为数组
$name_sec=$menu_cnnameData[0]['menu_enname'];
$title_sec=$menu_cnnameData[0]['menu_cnname'];
$jump_sec=$menu_cnnameData[0]['routes'];
$menu_list[]=['name'=>$name_sec,'title'=>$title_sec,'jump'=>$jump_sec];
// $menu_listout=$menu_list;
}
}
//输出为json
//为什么会多出一个方括号,是因为返回的是array
return array($menu_list);
}
}
所以自带外层的[ ]
如果想去掉,在调用的时候我直接用了下面一句话
//将子节点追加到$menu一级目录里
$list= $this->menu_sec($menu_id);
$menuOutData=['name'=>$name,'title'=>$title,'icon'=>$icon,'list'=>$list[0]];
直接提取list的第0个元素,而不是取list的第0个元素,而不是取list的第0个元素,而不是取list,就解决了问题。