的autoload机制的详细解释

当我们使用PHP的面向对象模式开发的系统,我们在一个单独的文件通常使用每个类的实现,这使得它易于重用的类,并在同一时间,便于日后的维护,这也是面向对象设计的基本思想。在PHP5,如果你需要使用一个类,你只需要把它直接与包括 /要求。
下面是一个实际的例子:
复制代码代码如下所示:
person.class.php / * * /
< PHP
类人{
$名称,$年龄;

功能__construct($name,$AGE)
{
这个名字;
美元=年龄=年龄;
}
}
>

no_autoload.php / * * /
< PHP
require_once(人。类。PHP);

为人=人(牛郎星,6);
var_dump(为人);
>

在这种情况下,该no-autoload.php文件需要使用Person类,它使用require_once包含它,然后它可以直接使用Person类实例化一个对象。

但随着项目规模的不断扩大,这种方法的使用会带来一些隐藏的问题:如果一个PHP文件需要许多其他类的使用,所以我们需要很多需要 /包括报表,这可能会导致丢失或包含不必要的文件。如果有大量的文件需要使用其他类,它是确保每个文件包含正确的类文件的噩梦。

PHP5提供了一个解决这个问题的,这是类的加载机制。加载机制使得PHP程序自动包括类文件时使用的类,而不是进入所有的类文件包括在第一,这也被称为延迟加载。

以下是使用加载机构加载Person类的例子。
复制代码代码如下所示:
autoload.php / * * /
< PHP
功能__autoload($ className){
require_once($类名。类);
}

为人=人(牛郎星,6);
var_dump(为人);
>