http://document.thinkphp.cn/manual_3_2.html#entrance_file
在配置文件中增加如下:
//加载拓展配置文件(多个文件用逗号分隔)
'LOAD_EXT_CONFIG' => 'user,pay',
例如user.php中的配置参数如下:
<?php
//用户配置文件
return array(
'USER_TYPE'=>2,
)
?>
那么,最终获取用户参数的方式是:
C(‘USER_TYPE’);

1.TP框架中已经内置了auth权限类,该类位于:
/ThinkPHP/Library/Think/Auth.class.php
2.执行该文件注释的sql语句生成3张表
//数据库
/*
-- ----------------------------
-- think_auth_rule,规则表,
-- id:主键,name:规则唯一标识, title:规则中文名称 status 状态:为1正常,为0禁用,condition:
规则表达式,为空表示存在就验证,不为空表示按照条件验证
-- ----------------------------
DROP TABLE IF EXISTS `think_auth_rule`;
CREATE TABLE `think_auth_rule` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` char(80) NOT NULL DEFAULT '',
`title` char(20) NOT NULL DEFAULT '',
`type` tinyint(1) NOT NULL DEFAULT '1',
`status` tinyint(1) NOT NULL DEFAULT '1',
`condition` char(100) NOT NULL DEFAULT '', # 规则附件条件,满足附加条件的规则,才认为是
有效的规则
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- ----------------------------
-- think_auth_group 用户组表,
-- id:主键, title:用户组中文名称, rules:用户组拥有的规则id, 多个规则","隔开,status
状态:为1正常,为0禁用
-- ----------------------------
DROP TABLE IF EXISTS `think_auth_group`;
CREATE TABLE `think_auth_group` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`title` char(100) NOT NULL DEFAULT '',
`status` tinyint(1) NOT NULL DEFAULT '1',
`rules` char(80) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- ----------------------------
-- think_auth_group_access 用户组明细表
-- uid:用户id,group_id:用户组id
-- ----------------------------
DROP TABLE IF EXISTS `think_auth_group_access`;
CREATE TABLE `think_auth_group_access` (
`uid` mediumint(8) unsigned NOT NULL,
`group_id` mediumint(8) unsigned NOT NULL,
UNIQUE KEY `uid_group_id` (`uid`,`group_id`),
KEY `uid` (`uid`),
KEY `group_id` (`group_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
*/
注:需要一张后台管理员表。如需其他表名,需在配置项中说明。




在后台公共控制器中,进行权限验证。
$auth=new \Think\Auth();//实例化auth类
$rule_name=MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_ NAME;//定义规则
$result=$auth->check($rule_name,$_SESSION['user']['id']);
//检查权限,通过验证返回true;失败返回false
if(!$result){ $this->error('您木有权限访问!!!再点打你丫的~');}





另外,附上万策智业教学总监李斌的总结:“tp的这个auth,策略设计的不够灵活,只能确定到某个控制器中的操作的执行权限,而不是针对资源,这个用在RestFul api上就不足了;而且每个角色的权限规则的叠加是用逗号分隔的,不算很简洁。”
然后……就没了。
Finally,谢谢大家的阅读!祝每天开心~
版权声明:本文为博主原创文章,未经博主允许不得转载。
微信赞赏
支付宝赞赏
后台模板不错
思彤啊
3 month payday loans payday loans online no credit check <a href="http://cashadvances2017.com"> payday loans online no credit check</a> payday loans with no bank account payday loans las vegas
payday loan near me what is a payday loan <a href="http://paydayloans2017.com"> online payday loans no credit check</a> payday loans online no credit check payday loan no credit check
hi everyone