# 类的自动加载

在编写面向对象程序时，很多开发者为每个类新建一个 PHP 文件。 这会带来一个烦恼：每个脚本的开头，都需要包含一个长长的列表（每个类都有一个文件）。使用 `spl_autoload_register()` 函数可以注册任意数量的自动加载器，当使用尚未被定义的类和接口时自动去加载。通过注册自动加载器，脚本引擎在 PHP 出错失败前有了最后一个机会加载所需的类。

```php
<?php

spl_autoload_register(function ($class) {
    require $class . '.php';
});
$foo = new Foo();
$bar = new Bar();

```

上例中的 `Foo.php` 文件内容：

```php
<?php

class Foo
{
    //
}

```

上例中的 `Bar.php` 文件内容：

```php
<?php

class Bar
{
    //
}

```

