Composer - 在供应商文件夹

时间:2016-10-13 09:49:30

标签: php codeigniter composer-php autoload

我一直在用composer设置CodeIgniter项目。我想在php文件夹中包含存储在vendor文件夹之外的文件中的shared个类。

我的目录结构:

/
  --application/
  --shared/
    -application/
       -class1.php
       -class2.php
       -class3.php
    -base/
       -classb1.php
  --vendor/
  --composer.json
  --composer.lock

查看作曲家documentation,我看到根包中有一个autoload属性,我试图用它来加载shared目录中的类。这些类不是命名空间。

我的composer.json文件如下:

{
    "description" : "The CodeIgniter Application with Composer",
    "require": {
        "php": ">=5.3.2",
        "codeigniter/framework": "3.1.*"
    },
    "require-dev": {
        "mikey179/vfsStream": "1.1.*"
    },
    "autoload":{
       "psr-0":{
           "":"shared/application/",
           "":"shared/base/",
           "":"shared/data/"
        }
    }
}

我的搜索引导我this question,但是这些类仍未加载。我在终端上运行了composer update

1 个答案:

答案 0 :(得分:0)

在进一步观察之后,根软件包中有一个名为classmapdocumentation)的属性。

"autoload":{
    "classmap":["shared/application/","shared/base/", "shared/data/"]
}

这会加载文件夹中的所有必需文件。

相关问题