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.'); class role_cat { //数据库连接 static $db; private static function _connect() { self::$db = pc_base::load_model('category_priv_model'); } /** * 获取角色配置权限 * @param integer $roleid 角色ID * @param integer $siteid 站点ID */ public static function get_roleid($roleid, $siteid) { if (empty(self::$db)) { self::_connect(); } if ($data = self::$db->select("`roleid` = '$roleid' AND `is_admin` = '1' AND `siteid` IN ('$siteid') ")) { $priv = array(); foreach ($data as $k=>$v) { $priv[$v['catid']][$v['action']] = true; } return $priv; } else { return false; } } /** * 获取站点栏目列表 * @param integer $siteid 站点ID * @return array() 返回为数组 */ public static function get_category($siteid) { $category = getcache('category_content_'.$siteid, 'commons'); foreach ($category as $k=>$v) { if (!in_array($v['type'], array(0,1))) unset($category[$k]); } return $category; } /** * 更新数据库信息 * @param integer $roleid 角色ID * @param integer $siteid 站点ID * @param array $data 需要更新的数据 */ public static function updata_priv($roleid, $siteid, $data) { if (empty(self::$db)) { self::_connect(); } //删除该角色当前的权限 self::$db->delete(array('roleid'=>$roleid, 'siteid'=>$siteid, 'is_admin'=>1)); foreach ($data as $k=>$v) { if (is_array($v) && !empty($v[0])) { foreach ($v as $key=>$val) { self::$db->insert(array('siteid'=>$siteid, 'catid'=>$k, 'is_admin'=>1, 'roleid'=>$roleid, 'action'=>$val)); } } } } }