我有一个用php5.6创建的网站,需要更新到php8.0.10。
因此,在这个第一个troble中,我们有一个不再支持的函数__autoload。
我如何更改为spl_autoload_register?
查看我的代码:
function __autoload($className) {
$classpath = array(
'model/','helpers/','plugin/email/',//frontend
'../model/','../helpers/','../plugin/email/'//backend
);
$classFile = ucfirst($className) . ".php";
$loaded = false;
foreach ($classpath as $path) {
if (is_readable("$path$classFile")) {
require "$path$classFile";
$loaded = true;
break;
}
}
}
不用麻烦。使用composer并删除旧内容。
https://getcomposer.org/doc/04-schema.md#classmap
例如
{
"autoload": {
"classmap": ["src/", "lib/", "Something.php"]
}
}
当它设置正确时(在composer init等之后(,只需运行以下命令:
- 作曲家转储