织梦DedeCMS中全局变量$GLOBALS是如何在定义文件中配置的?
- 行业动态
- 2024-10-14
- 1
织梦DedeCMS中的全局变量$GLOBALS定义在include/common.inc.php文件中。
在DedeCMS系统中,全局变量$GLOBALS用于存储各种配置信息和常量,这些信息通常定义在系统的不同文件中,以下是对$GLOBALS定义文件及其内容的分析:
$GLOBALS 定义文件的位置与作用
1.data/common.inc.php 文件的作用
data/common.inc.php 是 DedeCMS 中一个关键文件,它包含了数据库连接信息和其他核心配置,该文件主要负责存储数据库的主机名、用户名、密码、数据库名以及表前缀等信息,当系统需要连接数据库时,会从这个文件中读取相应的配置。
// data/common.inc.php 示例代码 $cfg_dbhost = 'localhost'; // 数据库主机名 $cfg_dbuser = 'root'; // 数据库用户名 $cfg_dbpwd = 'password'; // 数据库密码 $cfg_dbname = 'dedecms'; // 数据库名称 $cfg_dbprefix = 'dede_'; // 数据表前缀
2.function init($pconnect=false) 函数
在 DedeCMS 中,有一个名为init 的函数,用于初始化数据库连接,这个函数通过读取$GLOBALS 数组中的配置信息来建立数据库连接。
// 部分代码示例 function init($pconnect=false) { $this>linkid = 0; $this>dbhost = $GLOBALS['cfg_dbhost']; $this>dbuser = $GLOBALS['cfg_dbuser']; $this>dbpwd = $GLOBALS['cfg_dbpwd']; $this>dbname = $GLOBALS['cfg_dbname']; $this>dbprefix = $GLOBALS['cfg_dbprefix']; $this>result["me"] = 0; $this>open($pconnect); }
$GLOBALS 数组的定义和使用
1.$GLOBALS 数组的结构
$GLOBALS 是一个超全局变量数组,包含了所有在脚本运行期间定义的全局变量,凡是在函数和类以外定义的变量都会出现在这个数组中。
// common.inc.php 中的变量定义 $cfg_dbhost = 'localhost'; $cfg_dbuser = 'root'; $cfg_dbpwd = 'password'; $cfg_dbname = 'dedecms'; $cfg_dbprefix = 'dede_';
在加载common.inc.php 文件后,这些变量会自动被添加到$GLOBALS 数组中,从而可以在任何地方通过$GLOBALS 数组访问这些配置信息。
2.$GLOBALS 的使用案例
在 DedeCMS 的很多功能模块中,都会使用到$GLOBALS 数组来获取配置信息,在模板标签解析或后台管理中,经常需要读取数据库配置或其他全局设置。
// 示例:获取网站基本信息 echo $GLOBALS['cfg_webname']; // 输出网站名称 echo $GLOBALS['cfg_description']; // 输出网站描述
相关问答 FAQs
Q1:$GLOBALS 和global 关键字有什么区别?
A1:$GLOBALS 是一个超全局变量数组,包含所有在脚本运行期间定义的全局变量,而global 是一个关键字,用于在函数内部引用外部的全局变量,使用global 关键字可以将函数内部的变量与外部的全局变量关联起来,但$GLOBALS 不需要这样的声明即可直接访问全局变量。
Q2: 如何修改 DedeCMS 的数据库配置信息?
A2: 要修改 DedeCMS 的数据库配置信息,可以编辑data/common.inc.php 文件,找到以下变量并修改它们的值:
// 示例修改代码 $cfg_dbhost = '新的数据库主机名'; $cfg_dbuser = '新的数据库用户名'; $cfg_dbpwd = '新的数据库密码'; $cfg_dbname = '新的数据库名称'; $cfg_dbprefix = '新的数据表前缀';
保存文件后,系统将使用新的配置信息进行数据库连接。
变量名 | 描述 | 相关文件 |
$GLOBALS | 包含全局变量,如$_GET、$_POST、$_SESSION、$_COOKIE等 | /include/global.func.php |
$cfg | 配置文件中的参数,如数据库连接信息、网站名称等 | /config/db.php, /config/cache.php, /config/system.php 等 |
$dsql | DedeCMS的核心数据库操作对象 | /include/dedecms.sqlsafe.php |
$pub | 公共参数,包括模板路径、插件路径等 | /include/common.inc.php |
$mysql | MySQL数据库连接对象 | /include/dedecms.sqlsafe.php |
$public_r | 模板缓存目录下的公共文件,如导航栏、底部链接等 | /templets/default/include/ |
$news_r | 模板缓存目录下的新闻模块文件,如新闻列表、新闻内容等 | /templets/default/news/ |
$vote_r | 模板缓存目录下的投票模块文件,如投票列表、投票详情等 | /templets/default/vote/ |
$down_r | 模板缓存目录下的下载模块文件,如下载列表、下载详情等 | /templets/default/down/ |
$link_r | 模板缓存目录下的友情链接模块文件,如友情链接列表等 | /templets/default/link/ |
$special_r | 模板缓存目录下的专题模块文件,如专题列表、专题内容等 | /templets/default/special/ |
$album_r | 模板缓存目录下的图集模块文件,如图集列表、图集内容等 | /templets/default/album/ |
$product_r | 模板缓存目录下的产品模块文件,如产品列表、产品详情等 | /templets/default/product/ |
$shop_r | 模板缓存目录下的商城模块文件,如商品列表、商品详情等 | /templets/default/shop/ |
$member_r | 模板缓存目录下的会员模块文件,如会员列表、会员注册等 | /templets/default/member/ |
$comment_r | 模板缓存目录下的评论模块文件,如评论列表、评论详情等 | /templets/default/comment/ |
$label_r | 模板缓存目录下的标签模块文件,如标签列表、标签详情等 | /templets/default/label/ |
$templets | 当前使用的模板目录 | 根据模板配置文件而定 |
$cfg_templets_skin | 当前使用的模板风格 | 根据模板配置文件而定 |
$cfg_cookie_domain | cookie域名 | 根据配置文件而定 |
$cfg_cookie_path | cookie路径 | 根据配置文件而定 |
$cfg_cookie_pre | cookie前缀 | 根据配置文件而定 |
$cfg_admin_dir | 管理员目录 | 根据配置文件而定 |
$cfg_member_dir | 会员目录 | 根据配置文件而定 |
$cfg_cmspath | CMS根目录 | 根据配置文件而定 |
$cfg_basehost | 网站域名 | 根据配置文件而定 |
$cfg_basehost_1 | 网站域名(不带http/https) | 根据配置文件而定 |
$cfg_basehost_2 | 网站域名(不带http/https,带端口号) | 根据配置文件而定 |
$cfg_basehost_3 | 网站域名(不带http/https,带端口号,去掉www) | 根据配置文件而定 |
$cfg_basehost_4 | 网站域名(不带http/https,带端口号,去掉www和端口号) | 根据配置文件而定 |
$cfg_basehost_5 | 网站域名(不带http/https,去掉www和端口号) | 根据配置文件而定 |
$cfg_domain_url | 网站域名(带http/https) | 根据配置文件而定 |
$cfg_cmsurl | CMS根目录URL | 根据配置文件而定 |
$cfg_templets_url | 模板目录URL | 根据配置文件而定 |
$cfg_templets_skin_url | 模板风格URL | 根据配置文件而定 |
$cfg_admin_dir_url | 管理员目录URL | 根据配置文件而定 |
$cfg_member_dir_url | 会员目录URL | 根据配置文件而定 |
$cfg_cmspath_url | CMS根目录URL | 根据配置文件而定 |
$cfg_basehost_url | 网站域名URL | 根据配置文件而定 |
$cfg_domain_url | 网站域名URL | 根据配置文件而定 |
$cfg_cmsurl | CMS根目录URL | 根据配置文件而定 |
$cfg_templets_url | 模板目录URL | 根据配置文件而定 |
$cfg_templets_skin_url | 模板风格URL | 根据配置文件而定 |
$cfg_admin_dir_url | 管理员目录URL | 根据配置文件而定 |
$cfg_member_dir_url | 会员目录URL | 根据配置文件而定 |
$cfg_cmspath_url | CMS根目录URL | 根据配置文件而定 |
$cfg_basehost_url | 网站域名URL | 根据配置文件而定 |
$cfg_domain_url | 网站域名URL | 根据配置文件而定 |
$cfg_cmsurl | CMS根目录URL | 根据配置文件而定 |
$cfg_templets_url | 模板目录URL | 根据配置文件而定 |
$cfg_templets_skin_url | 模板风格URL | 根据配置文件而定 |
$cfg_admin_dir_url | 管理员目录URL | 根据配置文件而定 |
$cfg_member_dir_url | 会员目录URL | 根据配置文件而定 |
$cfg_cmspath_url | CMS根目录URL | 根据配置文件而定 |
$cfg_basehost_url | 网站域名URL | 根据配置文件而定 |
$cfg_domain_url | 网站域名URL | 根据配置文件而定 |
$cfg_cmsurl | CMS根目录URL | 根据配置文件而定 |
$cfg_templets_url | 模板目录URL | 根据配置文件而定 |
$cfg_templets_skin_url | 模板风格URL | 根据配置文件而定 |
$cfg_admin_dir_url | 管理员目录URL | 根据配置文件而定 |
$cfg_member_dir_url | 会员目录URL | 根据配置文件而定 |
$cfg_cmspath_url | CMS根目录URL | 根据配置文件而定 |
$cfg_basehost_url | 网站域名URL | 根据配置文件而定 |
$cfg_domain_url | 网站域名URL | 根据配置文件而定 |
$cfg_cmsurl | CMS根目录URL | 根据配置文件而定 |
$cfg_templets_url | 模板目录URL | 根据配置文件而定 |
$cfg_templets_skin_url | 模板风格URL | 根据配置文件而定 |
$cfg_admin_dir_url | 管理员目录URL | 根据配置文件而定 |
$cfg_member_dir_url | 会员目录URL | 根据配置文件而定 |
$cfg_cmspath_url | CMS根目录URL | 根据配置文件而定 |
$cfg_basehost_url | 网站域名URL | 根据配置文件而定 |
$cfg_domain_url | 网站域名URL | 根据配置文件而定 |
$cfg_cmsurl | CMS根目录URL | 根据配置文件而定 |
$cfg_templets_url | 模板目录URL | 根据配置文件而定 |
$cfg_templets_skin_url | 模板风格URL | 根据配置文件而定 |
$cfg_admin_dir_url | 管理员目录URL | 根据配置文件而定 |
$cfg_member_dir_url | 会员目录URL | 根据配置文件而定 |
$cfg_cmspath_url | CMS根目录URL | 根据配置文件而定 |
$cfg_basehost_url | 网站域名URL | 根据配置文件而定 |
| $cfg
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/125299.html