我是否需要重组项目目录才能与作曲家一起使用?

时间:2019-05-01 05:36:50

标签: php composer-php

在过去的5年左右的时间里,我逐渐习惯于构建这样的Web项目:

/var/www/project/
                /project.com/
                            /index.php
                            /images/
                /project.inc/
                            /vendor/
                            /classes/
                            /pages/
                            /models/

您明白了。这是我自己的类似mvc的系统。 project.com是唯一可通过网络访问的目录。其他大多数事情都在幕后,我喜欢这样。但是-最近我开始修改作曲家。我找不到在project.inc下容纳作曲家的任何可行方法。浏览作曲家的设置并阅读文档...我是否正确假设作曲家绝对必须在项目Webroot中?没办法吗?

1 个答案:

答案 0 :(得分:2)

要清楚,您指的是composer.json,它只是一个构建配置文件。我会争辩说它既不属于您的目录,因为它既不是Web文件(project.com),也不是在执行时包含的php代码(project.inc)。

尽管如此,放置在哪里都没有关系。至于设置供应商目录的位置,您可以在composer.json的config部分中进行设置

{
    "config": {
        "vendor-dir": "project.inc/vendor"
    }
}

我仍然建议您看一下symfony和laravel以及它们使用的结构和约定。它们可以解决您要解决的相同问题,甚至可以解决一些您未明确解决的问题。