1 namespace app\controller; 2 3 class Error 4 { 5 public function __call($method, $args) 6 { 7 8 if(request()->url() == "/admin/") 9 { 10 echo "<script type='text/javascript'>window.location='/admin/index/index.html'</script>"; 11 } 12 13 return 'Error,您请求的控制器找不到!'; 14 } 15 }
1 $data_list = Db::name('yphp_admin_power')->where("pstatus",1)->where("ptype",1)->order('porder', 'desc')->select()->toArray(); 2 foreach ($data_list as $key => $val) 3 { 4 //获取二级菜单 5 $data_list[$key]['child'] = Db::name('yphp_admin_power')->where("pstatus",1)->where("parent_id",$val['id'])->where("ptype",2)->order('porder', 'desc')->select()->toArray(); 6 } 7 $return_data['power_list'] = $data_list; 8 9 //获取用户权限 10 $return_data['powers_arr'] = array(); 11 if($this->admin_info['admin_role_id'] == 0) 12 { 13 $return_data['powers'] = 'all'; 14 } 15 else 16 { 17 $role_powers = Db::name('yphp_admin_role')->where("role_id",$this->admin_info['admin_role_id'])->value('role_powers'); 18 if($role_powers == 'all') 19 { 20 $return_data['powers'] = 'all'; 21 } 22 else 23 { 24 $return_data['powers'] = 'custom'; 25 $return_data['powers_arr'] = explode(",",$role_powers); 26 } 27 }
模板文件权限控制 index/index.html
1 {if in_array($val['id'],$powers_arr)} 2 <li> 3 <a href="javascript:;"> 4 <i class="iconfont left-nav-li" lay-tips="{$val['pname']}">{:base64_decode($val['picon'])}</i> 5 <cite>{$val['pname']}</cite> 6 <i class="iconfont nav_right"></i></a> 7 <ul class="sub-menu"> 8 {foreach $val['child'] as $val2} 9 10 {if in_array($val2['id'],$powers_arr)} 11 <li> 12 <a onclick="xadmin.add_tab('{$val2['pname']}','{:url('/admin/'.$val2['pcontroller'].'/'.$val2['paction'])}')"> 13 <i class="iconfont"></i> 14 <cite>{$val2['pname']}</cite></a> 15 </li> 16 {/if} 17 18 {/foreach} 19 </ul> 20 </li> 21 {/if}