Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[求助] 论坛顶部一直显示这一行代码,这是什么意思呢,该怎么解决

[复制链接]
ly94780 发表于 2018-11-29 18:55:22 | 显示全部楼层 |阅读模式
Deprecated: __autoload() is deprecated, use spl_autoload_register() instead in D:\localuser\ftp6266468\Web\upload\source\class\class_core.php on line 27

刚刚安装的论坛顶部一直显示这一行代码,这是什么意思呢,该怎么解决
allthebest 发表于 2018-11-29 19:06:59 | 显示全部楼层
PHP 7.2开始不主张使用function __autoload() 来自动加载类文件。
__autoload() been DEPRECATED as of PHP 7.2.0. Relying on this feature is highly discouraged.
请使用spl_autoload_register($callable)来替代__autoload()自动加载函数。其中参数$callable是一个自定义函数。自定义函数的参数为需要加载的类。其他用法和使用__autoload()自动加载函数一样。  
spl_autoload_register()可以注册多个自动加载函数,而使用自动加载函数__autoload()自动加载类时只能写一个__autoload()函数。
Discuz!使用传统的__autoload()来自动加载类文件,在PHP 7.2中运行需要改为spl_autoload_register()。

找到文件source\class\class_core.php,用文件编辑软件打开,搜索

  1. if(function_exists('spl_autoload_register')) {
  2.         spl_autoload_register(array('core', 'autoload'));
  3. } else {
  4.         function __autoload($class) {
  5.                 return core::autoload($class);
  6.         }
  7. }
复制代码


修改为:

  1. if(function_exists('spl_autoload_register')) {
  2.         spl_autoload_register(array('core', 'autoload'));
  3. }
复制代码


保存即可。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-26 11:56 , Processed in 0.028782 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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