首页 » 收集 » 正文内容
通过PHP自定义函数实现非常简单的权限分配
寻梦xunm| 940| 收集
2年前
超过768天 温馨提示
本文最后更新于2022年08月14日,已超过768天没有更新,若内容或图片失效,请留言反馈。

前几天就准备重新设计一下轻博客的权限功能,最初的权限功能已经不能满足网友的需求,于是今天就重新制作了一个权限分配功能,可以实现自由添加管理等级,个人感觉还行吧。

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 '抱歉,你的权限等级不足。';

}
0 赞 or 打赏
喜欢就打赏一点
微信 支付宝
隐私
Q Q:1340326824
邮箱:vipshiyi@qq.com
QQ群:422720328

我的音乐

微博客-专为自己编写开发的源码