21番茄网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 21番茄网
查看: 974|回复: 0

class_core.php 模块功能白皮书

[复制链接]

646

主题

799

帖子

2686

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2686
发表于 2020-10-10 15:13:55 | 显示全部楼层 |阅读模式
      source/class/class_core.php 是 Discuz! 的通用初始化模块程序,其几乎被所有的外部代码所引用,在您开始插件设计之前,可以先对该模块的大致功能做一定的了解。

class_core.php 主要完成了以下任务:

1.对不同 PHP 及操作系统环境做了判断和兼容性处理,使得 Discuz! 可以运行于各种不同配置的服务器环境下

2.初始化常量 IN_DISCUZ 为 TRUE,用于 include 或 require 后续程序的判断,避免其他程序被非法引用

3.读取社区程序所在绝对路径,存放于常量 DISCUZ_ROOT 中。

4.加载所需的基本函数库 source/function/function_core.php

5.通过 config/config_global.php 中提供的数据库账号信息,建立数据库连接。Discuz! 支持数据表的前缀,如需获得表的全名,可使 用“DB::table('tablename')”方式。

6.判断用户是否登录,如登录标记 $_G['uid'] 为非 0,同时将 $_G['username'](加了 addslashes 的用户名,可用于不加修改的插入数据库)、
$_G['member']['username'](原始的用户名,可用于页面显示)、
$_G['member']['password'](用户密码的MD5串)等相应用户信息赋值,
其他用户信息存放于 $_G['member']
更多信息可通过“getuserprofile()”获取。

7.判断用户管理权限,将管理权限标记 $_G['adminid'] 为 1~3 中间的值。
0 代表普通用户;
1 代表论坛管理员;
2 代表超级版主;
3 代表论坛版主。
将用户权限按照其所在的主用户组 ID 标记为 $_G['groupid'],相关权限从该 $_G['groupid'] 所对应的系统缓存中读出,存放于 $_G['group']

8.预置读入了每个模块的各种设置变量。

9.[X2.5变更内容] $_G['username'] 将不进行 addslashes 处理。




上一篇:discuz插件开发的技术文档
下一篇:解决discuz的插件正版提示问题和插件启用问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|21番茄网 ( 粤ICP备10099428号 ) 奇远富

GMT+8, 2024-4-24 00:03 , Processed in 0.388294 second(s), 43 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表