ThinkPHP类似于RBAC的权限控制

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP类似于RBAC的权限控制相关的知识,希望对你有一定的参考价值。

admin最高权限的用户只有一个,他将不参与判断,直接显示全部

技术分享图片

效果,商家管理权限,只单单显示商家管理导航,其他隐藏或移除元素

技术分享图片

1、首先我们程序做完之后,进我们的model和controller里面的方法进行数据库的入库处理,注意名称不能重复,不然导致权限混乱

技术分享图片

2、分配权限组,每个组别的权限不同,权限序列化处理,存入权限的id


技术分享图片

3、登陆的时候根据session的用户登陆的信息查到用户的权限组,然后查出所分配的权限,根据数据表我们只要控制列表按钮显示不显示就可以实现,那么我们就找到数据表里面的method的名称,然后将它组成一个数组。技术分享图片

4、将权限组里面的权限的cotroller的方法赋值到前台,前台使用in_array判断该名称是否在数组里面

技术分享图片

5、这个也是最关键的一步,在body加一个自动执行的设置技术分享图片

循环判断当前的ul下面是否是否都为空,不为空正常显示有权限的列表按钮,为空将移除父类,也就是


技术分享图片

按钮!


技术分享图片

这样效果就出来了,


以上是关于ThinkPHP类似于RBAC的权限控制的主要内容,如果未能解决你的问题,请参考以下文章

ThinkPHP中RBAC权限控制求助

基于thinkphp的RBAC权限控制

ThinkPHP中RBAC权限管理的简单应用

视频学习笔录---ThinkPHP---rbac权限管理

详解权限管理(RBAC)的实现方法

权限控制RBAC模型