getItems()[$item]; $url = yzWebFullUrl($current_menu['url']) . ($current_menu['url_params'] ? '&' . $current_menu['url_params'] : ''); if (PermissionService::isFounder()) { return $url; } if (PermissionService::isOwner()) { return $url; } if (PermissionService::isManager()) { return $url; } if (PermissionService::checkNoPermission($item) === true) { return $url; } if (!isset($current_menu['child'])) { return $url; } $userPermission = User::userPermissionCache(); //检测当前 key 下路由是否有权限访问 foreach ($current_menu['child'] as $key => $value) { if ($value['url'] == $current_menu['url'] && in_array($key, $userPermission)) { return $url; break; } continue; } //上面条件都不满足时,找第一个有权限访问的路由 foreach ($current_menu['child'] as $key => $value) { if (in_array($key, $userPermission)) { return yzWebFullUrl($value['url']) . ($value['url_params'] ? '&' . $value['url_params'] : ''); break; } continue; } return yzWebFullUrl('index.index'); } }