我已经创建了一个自定义的 composer 包,但我无法为其设置正确的自动加载选项。
我所有的类都在 MyNamespace/Common
命名空间下。例如,为了包含我的 ArrayHelper
类,我确实使用了 Mynamespace/Common/Helper/ArrayHelper
。
这是我的 composer.json
的相关部分:
"autoload": {
"psr-0": { "MyNamespace\\": "" }
}
我读过这个:composer.json / autoload
有什么帮助吗?
最佳答案
您必须导航到命名空间的文件位置。
"autoload": {
"psr-0": { "MyNameSpace": "./<path to your parent directory>" }
}
例如,这是我的目录结构:
composer.json
source
\-Data
|-Controller
\-Repository
然后,在 composer.json 文件中:
"autoload": {
"psr-0": { "MyNameSpace": "source/Data" }
}
然后,我可以在这些命名空间中定义类:
/* namespace for classes in controller directory */
namespace MyNameSpace\Controller;
/* namespace for classes in repository directory */
namespace MyNameSpace\Repository;
关于php - Composer 自动加载器 psr-0 命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18146057/