PHP的自动加载类

作者:网络 | 发布时间:2020年10月30日 | 阅读:712

使用 spl_autoload_register() 来注册你的自动加载函数。

PHP 提供了若干方式来自动加载包含还未加载的类的文件。 老的方法是使用名为 autoload() 魔术全局函数。 然而你一次仅能定义一个 autoload() 函数,因此如果你的程序包含一个也使用了 __autoload() 函数的库,就会发生冲突。

处理这个问题的正确方法是唯一地命名你的自动加载函数,然后使用 spl_autoload_register() 函数来注册它。 该函数允许定义多个 autoload() 这样的函数,因此你不必担心其他代码的 autoload() 函数。

示例

<?php
// 首先,定义你的自动载入的函数
function MyAutoload($className){
    include_once($className . '.php');
}

// 然后注册它。
spl_autoload_register('MyAutoload');

// Try it out!
// 因为我们没包含一个定义有 MyClass 的文件,所以自动加载器会介入并包含 MyClass.php。
// 在本例中,假定在 MyClass.php 文件中定义了 MyClass 类。
$var = new MyClass();
?>


相关内容