作曲家自动加载器 psr-0 命名空间 [英] composer autoloader psr-0 namespaces
问题描述
我创建了一个自定义 Composer 包,但无法为其设置正确的自动加载选项.
I have create a custom composer package but I am having troubles to set the correct autoload options for it.
我所有的类都在 MyNamespace/Common
命名空间下.例如,为了包含我的 ArrayHelper
类,我确实使用了 Mynamespace/Common/Helper/ArrayHelper
.
All my classes are under MyNamespace/Common
namespace. So for example for including my ArrayHelper
class I do use Mynamespace/Common/Helper/ArrayHelper
.
这是我的composer.json
的相关部分:
"autoload": {
"psr-0": { "MyNamespace\": "" }
}
我读过这个:composer.json/autoload
有什么帮助吗?
推荐答案
您必须导航命名空间的文件位置.
You have to navigate the file location of your namespace.
"autoload": {
"psr-0": { "MyNameSpace": "./<path to your parent directory>" }
}
例如,这是我的目录结构:
For example, this is my directory structure:
composer.json
source
-Data
|-Controller
-Repository
然后,在 composer.json 文件中:
Then, in the composer.json file:
"autoload": {
"psr-0": { "MyNameSpace": "source/Data" }
}
然后,我可以在这些命名空间中定义类:
Then, I can define classes in these namespaces:
/* namespace for classes in controller directory */
namespace MyNameSpaceController;
/* namespace for classes in repository directory */
namespace MyNameSpaceRepository;
这篇关于作曲家自动加载器 psr-0 命名空间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!