使用 Composer 自动加载
Composer 生成 vendor/autoload.php
文件。
你可能只是包含此文件,你将免费获得自动加载。
require __DIR__ . '/vendor/autoload.php';
这使得使用第三方依赖项非常容易。
你还可以通过向 composer.json
添加自动加载部分,将自己的代码添加到 Autoloader。
{
"autoload": {
"psr-4": {"YourApplicationNamespace\\": "src/"}
}
}
在本节中,你将定义自动加载映射。在此示例中,它将命名空间的 PSR-4 映射到目录:/src
目录位于项目根文件夹中,与/vendor
目录位于同一级别。示例文件名是包含 YourApplicationNamespace\Foo
类的 src/Foo.php
。
重要说明: 在自动加载部分中添加新条目后,必须重新运行命令 dump-autoload
以使用新信息重新生成和更新 vendor/autoload.php
文件。
除了 PSR-4
自动加载,Composer 还支持 PSR-0
,classmap
和 files
自动加载。有关更多信息,请参阅自动加载参考 。
当你包含/vendor/autoload.php
文件时,它将返回 Composer Autoloader 的一个实例。你可以将 include 调用的返回值存储在变量中,并添加更多名称空间。例如,这对于在测试套件中自动加载类非常有用。
$loader = require __DIR__ . '/vendor/autoload.php';
$loader->add('Application\\Test\\', __DIR__);