<?php
class CommonAction extends Action{
public function _initialize(){
//类库位置应该位于ThinkPHP\Extend\Library\ORG\Util\
import('ORG.Util.Auth');//加载类库
$auth=new Auth();
if(!$auth->check(GROUP_NAME . '/' . MODULE_NAME.'/'.ACTION_NAME,session('uid'))){
$this->error('你没有权限');
}
}
}3.2<?php
namespace Common\Controller;
use Think\Controller;
class CommonController extends Controller {
public function _initialize () {
$AUTH = new \Think\Auth();
//类库位置应该位于ThinkPHP\Library\Think\
if(!$AUTH->check(MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_NAME, session('uid'))){
$this->error('没有权限');
}
}
}八、新建后台首页<?php
class IndexAction extends CommonAction {
public function index () {
echo '后台首页';
}
}3.2<?php
namespace Admin\Controller;
use Common\Controller\CommonController;
class IndexController extends CommonController {
public function index () {
echo '后台首页';
}
}注意命名应和auth_rule表中的name完全对应。 //Auth权限设置
'AUTH_CONFIG' => array(
'AUTH_ON' => true, // 认证开关
'AUTH_TYPE' => 1, // 认证方式,1为实时认证;2为登录认证。
'AUTH_GROUP' => 'auth_group', // 用户组数据表名
'AUTH_GROUP_ACCESS' => 'auth_group_access', // 用户-用户组关系表
'AUTH_RULE' => 'auth_rule', // 权限规则表
'AUTH_USER' => 'member', // 用户信息表
),其中AUTH_TYPE设为2后,在SESSION中就会有类似数组 [_AUTH_LIST_31] => Array
(
[0] => admin/index/index
[1] => admin/base/index
[2] => admin/rbac/role
[3] => admin/rbac/member
[4] => admin/rbac/node
)改变以上的'AUTH_GROUP','AUTH_GROUP_ACCESS','AUTH_RULE','AUTH_USER'配置项,即可自定义Auth认证所需四张表,但注意加上表前缀。ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。