安装dz3.4的时候出现了错误 New
Fatal error: Uncaught Error: Call to undefined function getglobal() in /www/wwwroot/youxi.com/source/class/discuz/discuz_error.php:387 Stack trace: #0 /www/wwwroot/youxi.com/source/class/discuz/discuz_error.php(186): discuz_error::write_error_log() #1 /www/wwwroot/youxi.com/source/class/class_core.php(121): discuz_error::exception_error() #2 : core::handleException() #3 {main} thrown in /www/wwwroot/youxi.com/source/class/discuz/discuz_error.php on line 387这个要怎么解决啊
我知道答案 回答被采纳将会获得1 贡献 已有2人回答 这个错误很典型,核心原因是 Discuz! X3.4 在安装或运行时,找不到一个名为 getglobal() 的核心函数。
getglobal() 函数是 Discuz! 的“心脏”之一,定义在 /source/function/function_core.php 文件中。程序找不到它,通常由以下几个原因造成。
🔍 核心排查步骤
我为你整理了从简到繁的排查步骤,可以按顺序试试看。
第一步:检查核心文件是否完整
这是最常见的原因。请检查你的网站根目录下,/source/function/function_core.php 这个文件是否存在。如果文件丢失或不完整,请从官方下载最新、完整的 X3.4 安装包,重新上传此文件。
第二步:检查PHP版本是否兼容
Discuz! X3.4 对 PHP 版本有明确要求,过高或过低都可能不兼容。
兼容版本:PHP 5.6 到 7.4。特别注意:X3.4 不兼容 PHP 8 及以上版本。 如何查看:可以在网站根目录新建一个 phpinfo.php 文件,写入 <?php phpinfo(); ?>,然后通过浏览器访问它,即可看到当前 PHP 版本。
如果你的 PHP 版本不在兼容范围内,请将其切换至 5.6 至 7.4 之间的版本。
第三步:检查文件上传是否完整
有时并非单个文件丢失,而是整个 upload 目录下的文件没有上传完整。请确保你已经将 Discuz! 安装包中 upload 目录下的所有文件和文件夹都完整地上传到了服器上的正确目录。
第四步:检查是否在错误地执行“升级”
这个错误也可能出现在执行升级脚本(如 update_adult.php)时。
确认操作:请再次确认你是在进行全新安装还是版本升级。 如果是升级:请确保你严格按照官方升级教程操作,并且所有升级所需的文件都已正确上传。
💎 总结
总的来说,解决这个问题的核心思路就是:确保所有核心文件完整,并且PHP版本正确。
首选方案:先检查 function_core.php 文件是否存在,并确认 PHP 版本在 5.6 - 7.4 之间。 进阶排查:如果问题依旧,重新上传完整的程序文件(注意不要覆盖已有的 config 目录和数据,如果是全新安装则无此顾虑)。
如果以上步骤都无法解决,可以检查服器错误日志,或在官方论坛(如 www.dismall.com)提供更详细的错误上下文来求助。 兄弟,先搞到5.0吧,老版本问题会越来越多。php 8.4以上比较好一些。
页:
[1]