欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

[PHP] 最简单的权限控制设计

程序员文章站 2022-03-12 16:07:28
假设url部分我们只有action和method , 某个控制器下的某个方法 , 比如:log/loginlog 查看日志下的登陆日志, action就是log , method就是loginlog 1.设置一个菜单数组 2.设置一个角色数组 3.角色对应的权限数组 4.判断权限的时候 ......

假设url部分我们只有action和method , 某个控制器下的某个方法 , 比如:log/loginlog   查看日志下的登陆日志, action就是log , method就是loginlog

1.设置一个菜单数组

$menumap = array(
	'entmanager' => array(
        'name' => '企业管理',
        'submenu' => array(
            'entlist' => array('企业列表')
    ),
    'log' =>array(
    	'name' => '日志管理',
        'submenu' => array(
            'loginlog' => array('登陆日志')
    )
)

2.设置一个角色数组

$userrole = array(
    1 => "超级管理员",
    2 => "普通管理员",
    3 => "客服操作员",
);

3.角色对应的权限数组

$permission=array(
    '1'=>array(
        'entmanager'=>array('entlist'),
        'log'=>array('loginlog')
    ),
    '2'=>array(
        'log'=>array('loginlog')
    ),
    '3'=>array(
        'entmanager'=>array('entlist')
    ),
)

4.判断权限的时候

if (array_key_exists($action, $permission) && in_array($method, $permission[$action])) {
        return true;
  }else{
          return false;
  }