\app\admin\libraryAuth

权限认证类 功能特性: 1,是对规则进行认证,不是对节点进行认证。用户可以把节点当作规则名称实现对节点进行认证。 $auth=new Auth(); $auth->check('规则名称','用户id') 2,可以同时对多条规则进行认证,并设置多条规则的关系(or或者and) $auth=new Auth(); $auth->check('规则1,规则2','用户id','and') 第三个参数为and时表示,用户需要同时具有规则1和规则2的权限。 当第三个参数为or时,表示用户值需要具备其中一个条件即可。默认为or 3,一个用户可以属于多个用户组(think_auth_group_access表 定义了用户所属用户组)。我们需要设置每个用户组拥有哪些规则(think_auth_group 定义了用户组权限) 4,支持规则表达式。 在think_auth_rule 表中定义一条规则,condition字段就可以定义规则表达式。 如定义{score}>5 and {score}<100 表示用户的分数在5-100之间时这条规则才会通过。

Summary

Methods
Properties
Constants
__construct()
instance()
check()
getGroups()
getRuleList()
getRuleIds()
getUserInfo()
__get()
login()
logout()
autologin()
match()
isLogin()
getRequestUri()
setRequestUri()
isSuperAdmin()
getGroupIds()
getChildrenGroupIds()
getChildrenAdminIds()
getBreadCrumb()
getSidebar()
setError()
getError()
No public properties found
No constants found
keeplogin()
$instance
$rules
$request
$config
$_error
$requestUri
$breadcrumb
$logined
N/A
No private methods found
No private properties found
N/A

Properties

$instance

$instance : object

Type

object — 对象实例

$rules

$rules : 

Type

$request

$request : \think\Request

当前请求实例

Type

\think\Request

$config

$config : 

Type

$_error

$_error : 

Type

$requestUri

$requestUri : 

Type

$breadcrumb

$breadcrumb : 

Type

$logined

$logined : 

Type

Methods

__construct()

__construct() 

类架构函数 Auth constructor.

instance()

instance(array  $options = array()) : \fast\Auth

初始化

Parameters

array $options

参数

Returns

\fast\Auth

check()

check(  $name,   $uid = '', string  $relation = 'or', string  $mode = 'url') : boolean

检查权限

Parameters

$name

string|array 需要验证的规则列表,支持逗号分隔的权限规则或索引数组

$uid

int 认证用户的id

string $relation

如果为 'or' 表示满足任一条规则即通过验证;如果为 'and'则表示需满足所有规则才能通过验证

string $mode

执行验证的模式,可分为url,normal

Returns

boolean —

通过验证返回true;失败返回false

getGroups()

getGroups(  $uid = null) : array

根据用户id获取用户组,返回值为数组

Parameters

$uid

int 用户id

Returns

array —

用户所属的用户组 array( array('uid'=>'用户id','group_id'=>'用户组id','name'=>'用户组名称','rules'=>'用户组拥有的规则id,多个,号隔开'), ...)

getRuleList()

getRuleList(integer  $uid = null) : array

获得权限规则列表

Parameters

integer $uid

用户id

Returns

array

getRuleIds()

getRuleIds(  $uid = null) 

Parameters

$uid

getUserInfo()

getUserInfo(  $uid = null) : mixed

获得用户资料

Parameters

$uid

Returns

mixed

__get()

__get(  $name) 

Parameters

$name

login()

login(string  $username, string  $password, integer  $keeptime) : boolean

管理员登录

Parameters

string $username

用户名

string $password

密码

integer $keeptime

有效时长

Returns

boolean

logout()

logout() 

注销登录

autologin()

autologin() : boolean

自动登录

Returns

boolean

match()

match(array  $arr = array()) 

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

Parameters

array $arr

需要验证权限的数组

isLogin()

isLogin() : boolean

检测是否登录

Returns

boolean

getRequestUri()

getRequestUri() : string

获取当前请求的URI

Returns

string

setRequestUri()

setRequestUri(string  $uri) 

设置当前请求的URI

Parameters

string $uri

isSuperAdmin()

isSuperAdmin() 

getGroupIds()

getGroupIds(integer  $uid = null) : array

获取管理员所属于的分组ID

Parameters

integer $uid

Returns

array

getChildrenGroupIds()

getChildrenGroupIds(boolean  $withself = false) : array

取出当前管理员所拥有权限的分组

Parameters

boolean $withself

是否包含当前所在的分组

Returns

array

getChildrenAdminIds()

getChildrenAdminIds(boolean  $withself = false) : array

取出当前管理员所拥有权限的管理员

Parameters

boolean $withself

是否包含自身

Returns

array

getBreadCrumb()

getBreadCrumb(string  $path = '') : array

获得面包屑导航

Parameters

string $path

Returns

array

getSidebar()

getSidebar(array  $params = array(), string  $fixedPage = 'dashboard') : array

获取左侧和顶部菜单栏

Parameters

array $params

URL对应的badge数据

string $fixedPage

默认页

Returns

array

setError()

setError(  $error) : \app\admin\library\Auth

设置错误信息

Parameters

$error

错误信息

Returns

\app\admin\library\Auth

getError()

getError() : string

获取错误信息

Returns

string

keeplogin()

keeplogin(integer  $keeptime) : boolean

刷新保持登录的Cookie

Parameters

integer $keeptime

Returns

boolean