class CommonController extends Controller { public function __construct() { //方法名 $action=\Route::current()->getActionName(); list($class,$action)=explode('@',$action); //控制器名 $controller=substr(strrchr($class,'\\'),1); $controller=substr($controller,0,-10); $session=new Session(); $uid=$session->get("uid"); $data=DB::table('username') ->where('uid',$uid)->get(); $data=json_decode(json_encode($data),true); foreach($data as $k=>$v){ $arr[]=$v['content']."/".$v['method']; } if(!in_array($controller."/".$action,$arr)){ echo "<script>alert('没有权限,请前去登录!!!!');location.href='login_index'</script>"; } } }
laravel 手写RBAC控制
最新推荐文章于 2025-10-02 02:34:38 发布
本文介绍了一个PHP框架中的通用控制器实现,该控制器主要用于权限验证。通过获取当前路由的动作名称,解析出控制器名和方法名,并从会话中获取用户ID来检查用户是否有访问特定控制器和方法的权限。
1254

被折叠的 条评论
为什么被折叠?



