如何在运行时添加Composer自动加载类映射

时间:2017-04-10 16:02:24

标签: php composer-php runtime autoload

以这种方式为composer自动加载添加目录(composer.json)

"autoload": {
    "classmap": [
        "/var/www/lib",
        "/var/www/source"
    ]
}

但每次在我自己的项目目录中创建新类时,运行composer dumpautoload总是很烦人。

如何在运行时添加我的目录?

P.S。我知道什么是PSR-4。但是当你有超过100个类并使用数百个模板进行HTML渲染时 - 这不是解决方案。我将不得不在模板中写下很多“使用foo \ bar”。那是不正常的。

1 个答案:

答案 0 :(得分:0)

只有两种方法可以告诉Composer如何查找未在类图中记录的类,即PSR-0和PSR-4。 PSR-0适用于所有类型的类,PSR-4仅适用于名称空间中的类。

一个人应该能够将代码结构化为PSR-0或PSR-4,特别是如果它是新编写的代码 - 这就是为什么classmap自动加载只被认为是一种能够处理的方式旧的遗留代码不符合PSR。使用classmap自动加载新代码是不正常的。