where('app_id', '=', $app_id)->column('access_id'); if(!empty($list)){ $child_list = $this->getChildAccessIds($list); if($child_list){ $list= array_merge($list,$child_list); } } return $list; } /** * 获取该权限底下的所有 */ public function getChildAccessIds($access_ids=[],$list=[]) { $model =new AccessModel(); $child_list = $model::withoutGlobalScope()->where('parent_id', 'in', $access_ids)->column('access_id'); if(!empty($child_list)){ $list= array_merge($list,$child_list); return $this->getChildAccessIds($child_list,$list); } return $list; } }