tp5检测当前控制器和方法是否匹配传递的数组

2022-01-26  本文已影响0人  JUN888

用于检测用户是否登录,以及是否有权限操作

/**
     * 检测当前控制器和方法是否匹配传递的数组
     *
     * @param array $arr 需要验证权限的数组
     * @return bool
     */
    public function match($arr = [])
    {
        $request = Request::instance();
        $arr     = is_array($arr) ? $arr : explode(',', $arr);
        if (!$arr) {
            return false;
        }

        $arr = array_map('strtolower', $arr);
        // 是否存在 判断当前请求 是否在【不需要登录的方法 的数组】里,或者列表包含 * 所有
        if (in_array(strtolower($request->action()), $arr) || in_array('*', $arr)) {
            return true;
        }

        // 没找到匹配
        return false;
    }
上一篇下一篇

猜你喜欢

热点阅读