前几天就准备重新设计一下轻博客的权限功能,最初的权限功能已经不能满足网友的需求,于是今天就重新制作了一个权限分配功能,可以实现自由添加管理等级,个人感觉还行吧。
php自定义函数权限代码
//自定义权限函数 //$name 功能名称(ps:就是通过它对比下面权限数组中的值,已达到权限判断目的) //$id 用户权限等级, function xmadmin(string $name,$id = 1){ //注意这里不能为空值或者‘0’等 $id = (int) $id ?? 0; $name = $name ?? null; //判断传递过来的值是否为空值 if ($id == 0 || $id == '' || $name == null || $name == ''){ return false; } //权限数组,通过下面的数组可以分配权限功能 $permission=array( //超级管理员 '1'=>array( //后台 'admin', //插件 'plugin', //评论 'ping', //数据 'shu', //设置 'config', //模板 'tplm', //缓存 'tpl', //日志 'ri', //用户 'user', //新增 'useri', ), //管理员 '2'=>array( //后台 'admin', //插件 'plugin', //设置 'config', //用户 'user', ), //总编辑 '3'=>array( //后台 'admin', //评论 'ping', ), ); $qx = $permission[$id] ?? false; //判断权限数组是否存在相关职位 if ($qx == false){ return false; } //判断权限数组中的相关职位是否有相关权限 if (in_array($name,$qx) === true){ return true; } return false; }
使用方法
//判断插件功能是否有权限,没有权限为“false”,有权限为“true”,其中的“plugin”为需要判断功能名称(对应上面权限数组的值) if (xmadmin('plugin') == false){ echo '抱歉,你的权限等级不足。'; }