PHP从7.0 升级到 PHP 7.3 后出现 Deprecated: __autoload() is deprecated, use spl_autoload_register() instead in

PHP从7.0 升级到 PHP 7.3 后出现 Deprecated: __autoload() is deprecated, use spl_autoload_register() instead in

Monday, September 23, 2019

8:37 AM

错误提示:

( ! ) Deprecated: __autoload() is deprecated, use spl_autoload_register() instead in C:\xampp

\htdocs\myiot\admin\login.php on line 42

原因:

这是因为php在 7.2 开始就不建议使用function __autoload(){} 来自动加载类文件。

解决办法

更改原有加的类加载程序如下:


function __autoload ($class_name){

$class_file = str_replace(‘\\’,’/’,$class_name). ‘.class.php’;

if (file_exists($class_file))

{

require_once($class_file);

if(class_exists($class_name,false))

{

return true;

}

return false;

}

return false;

}


function autoload ($class_name){

$class_file = str_replace(‘\\’,’/’,$class_name). ‘.class.php’;

if (file_exists($class_file))

{

require_once($class_file);

if(class_exists($class_name,false))

{

return true;

}

return false;

}

return false;

}

if(function_exists(‘spl_autoload_register’)) {

spl_autoload_register(‘autoload’);

}

Leave a Comment