<?php
namespace Admin\Controller;
use Think\Controller;
class CommonController extends Controller {
public function _initialize(){
if(empty($_SESSION['login'])){
$this->redirect('Login/login');
eixt();
}
}
}
不管操作哪个控制器,都会先执行这一段
thinkphp的权限控制
1.rbac权限控制
rbac权限控制主要就是有两张表的使用,权限表和角色表。权限表包括各种权限的模块、控制器、方法的信息。
角色表包括角色信息和它下面的权限信息。
使用的时候就是判断当前操作是否在当前角色的权限里。
使用起来十分的方便的。
为了显示树形结构和菜单的显示,我们还可以给权限分配相应的level和pid字段,方便我们调用的。
2.Auth权限控制
这个类是直接在tp3.2的类中的,Auth权限里含有表的结构,使用起来十分的方便。
这个是直接通过session读取的权限信息。不是直接通过数据库读取信息的,而且在权限验证的时候,验证的方法已经写好了,
我们直接调用就可以了。
<?php namespace Admin\Controller; use Think\Controller; class CommonController extends Controller { public function _initialize(){ if(empty($_SESSION['login'])){ $this->redirect('Login/login'); eixt(); } } }
不管操作哪个控制器,都会先执行这一段
转载于:https://my.oschina.net/qjd/blog/786353
在登陆以后的页面中,如果不加以判断,只要在地址栏中修改,即可访问到原本必须在登陆以后才可以访问的页面
手册3.1 拓展->控制器拓展:
系统Action类提供了一个初始化方法_initialize接口,可以用于扩展需要,_initialize方法会在所有操作方法调用之前首先执行
但一般不在thinkphp中修改该方法
自己在写一个继承自Action的类
其他页面再继承这个新写的类