php spl_自动加载_寄存器与自动加载?

php spl_自动加载_寄存器与自动加载?,php,autoload,Php,Autoload,您好,我们可以使用自己的名称auto load(自动加载)来使用此例外情况,有什么不同吗?性能有什么不同吗?它们内部如何工作 中间 function __autoload_libraries($class){ include_once 'lib.'.$class.'.php'; } spl_autoload_register('__autoload_libraries'); vs 自动加载通常被认为是过时的。它只允许一个自动加载器。通常,如果使用的PHP版本不支持spl\u autl

您好,我们可以使用自己的名称auto load(自动加载)来使用此例外情况,有什么不同吗?性能有什么不同吗?它们内部如何工作

中间

function __autoload_libraries($class){
    include_once 'lib.'.$class.'.php';
}

spl_autoload_register('__autoload_libraries');
vs


自动加载通常被认为是过时的。它只允许一个自动加载器。通常,如果使用的PHP版本不支持
spl\u autload\u register
,则只应使用
\u autoload

spl\u autoload\u register
允许注册多个自动加载程序,这些程序将依次运行,直到找到并加载匹配的类/接口/特征,或者直到耗尽所有自动加载选项。这意味着,如果您使用的是框架代码或其他第三方库,它们实现了自己的自动加载器,那么您就不必担心自己的代码会导致冲突

更新:
\uuuu autoload
从PHP7.2.0开始就被正式弃用,这意味着它现在处于断头台上。如果您希望您的代码与PHP的未来版本兼容,则绝对不应使用
\uu autoload
阅读:

spl_autoload_register()为自动加载类提供了更灵活的选择。因此,不鼓励使用_autoload(),将来可能会被弃用或删除

内容如下:

如果必须有多个自动加载函数,则spl_autoload_register()允许这样做。它有效地创建了一个自动加载函数队列,并按照定义的顺序遍历每个函数。相比之下,_autoload()只能定义一次


我看不出有什么好的例子可以这样做,当我尝试它时,它会在自动加载一个的文件被包含后加载另一个自动加载两个。
function __autoload($class){
    include_once 'lib.'.$class.'.php';
}