switch ($rtn["权限字段"])
{
case 0:$tmp='(1,2,3,4)';break;
case 1:$tmp='(1,2,4)';break;
case '2':$tmp='()';break;
default:
$this->error('请确保您有后台管理权限:(');break;
}
$authhead=$model->where('auth_level=0 and auth_path in '.$tmp)->getField('auth_id,auth_name,auth_path,auth_level');
$listbody=$model->where('auth_level=1')->getField('auth_id,auth_name,auth_func,auth_path,auth_level');
writeAuth($authhead,$listbody); 权限文件位于当前分组-》conf目录下:function writeAuth($arr1,$arr2) {
$path =MODULE_NAME. '/Conf/auth.php';
if(!@fileperms($path)==33206){ //读取指定文件权限
@chmod($path, 0777); //如果权限不够,修改权限文件权限;
}
$rtn= file_put_contents($path, "<?php return array(\r\n 'head'=>" . var_export($arr1,true) . ",\r\n'body'=>".var_export($arr2,true)."\r\n);", LOCK_EX);
@unlink(RUNTIME_FILE);
return $rtn;
}正常情况下是无法写入配置文件,通过 @chmod($path, 0777);修改function __constructor(){
$this->assign('head',C('authhead'));
$this->assign('body',C('listbody'));
if (!isset($_SESSION['*****'])) {
$this->error('对不起,您还没有登录!请先登录再进行浏览', U('***'), 1);
}}普通控制 初始化时 parent::__constructor();<foreach name="head" item="vo">
<div class="panel panel-primary">
<div class="panel-heading toggle" >
<h4 class="panel-title">{$vo.auth_name}</h4>
</div>
<div class="panel-body">
<div class="list-group">
<foreach name="body" item="vo1">
<if condition="$vo1['auth_path'] eq $vo['auth_path']">
<a href="{:U($vo1['auth_func'])}" class="list-group-item">
{$vo1.auth_name}</a>
</if>
</foreach>
</div>
</div>
</div>
</foreach>数据库权限表:ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。