【问题标题】:composer autoloader psr-0 namespaces作曲家自动加载器 psr-0 命名空间
【发布时间】:2013-08-11 08:21:39
【问题描述】:

我已经创建了一个自定义作曲家包,但我无法为其设置正确的自动加载选项。

我所有的课程都在MyNamespace/Common 命名空间下。例如,为了包含我的ArrayHelper 课程,我确实使用Mynamespace/Common/Helper/ArrayHelper

这是我composer.json的相关部分:

"autoload": {
    "psr-0": { "MyNamespace\\": "" }
} 

我已阅读:composer.json / autoload

有什么帮助吗?

【问题讨论】:

    标签: php namespaces composer-php autoload psr-0


    【解决方案1】:

    您必须导航命名空间的文件位置。

    "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;
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-07
    • 2013-04-08
    • 2013-06-29
    • 1970-01-01
    • 2014-03-17
    • 2012-09-07
    • 2013-11-30
    • 2016-10-31
    相关资源
    最近更新 更多