Server : nginx/1.22.1 System : Linux iZwz9daxib3w3i063fw434Z 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64 User : www ( 1000) PHP Version : 7.2.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv Directory : /www/wwwroot/www.jkmold.com/phpcms/modules/admin/classes/ |
<?php defined('IN_PHPCMS') or exit('No permission resources.'); //定义在后台 define('IN_ADMIN',true); class role_op { public function __construct() { $this->db = pc_base::load_model('admin_role_model'); $this->priv_db = pc_base::load_model('admin_role_priv_model'); } /** * 获取角色中文名称 * @param int $roleid 角色ID */ public function get_rolename($roleid) { $roleid = intval($roleid); $search_field = '`roleid`,`rolename`'; $info = $this->db->get_one(array('roleid'=>$roleid),$search_field); return $info; } /** * 检查角色名称重复 * @param $name 角色组名称 */ public function checkname($name) { $info = $this->db->get_one(array('rolename'=>$name),'roleid'); if($info[roleid]){ return true; } return false; } /** * 获取菜单表信息 * @param int $menuid 菜单ID * @param int $menu_info 菜单数据 */ public function get_menuinfo($menuid,$menu_info) { $menuid = intval($menuid); unset($menu_info[$menuid][id]); return $menu_info[$menuid]; } /** * 检查指定菜单是否有权限 * @param array $data menu表中数组 * @param int $roleid 需要检查的角色ID */ public function is_checked($data,$roleid,$siteid,$priv_data) { $priv_arr = array('m','c','a','data'); if($data['m'] == '') return false; foreach($data as $key=>$value){ if(!in_array($key,$priv_arr)) unset($data[$key]); } $data['roleid'] = $roleid; $data['siteid'] = $siteid; $info = in_array($data, $priv_data); if($info){ return true; } else { return false; } } /** * 是否为设置状态 */ public function is_setting($siteid,$roleid) { $siteid = intval($siteid); $roleid = intval($roleid); $sqls = "`siteid`='$siteid' AND `roleid` = '$roleid' AND `m` != ''"; $result = $this->priv_db->get_one($sqls); return $result ? true : false; } /** * 获取菜单深度 * @param $id * @param $array * @param $i */ public function get_level($id,$array=array(),$i=0) { foreach($array as $n=>$value){ if($value['id'] == $id) { if($value['parentid']== '0') return $i; $i++; return $this->get_level($value['parentid'],$array,$i); } } } } ?>