自定义服务提供商的Silex文件结构



我正在从事一个Silex项目,该项目需要一些自定义服务提供商及其相关类。

我知道Silex项目的首选文件结构,但无法在任何地方找到有关自定义类应适合此结构的信息。所有作曲家提供的库自然都在供应商文件夹中,自定义的库?

目前(修剪为太空)我的目录结构如下:

.
├── composer.json
├── composer.lock
├── composer.phar
├── src
│   └── Dashboard
│       ├── Controller
│       │   ├── indexController.php
│       │   └── viewController.php
│       └── Model
│           └── Users.php
├── vendor
│   ├── autoload.php
│   ├── composer
├── views
│   ├── index.twig
│   ├── layout.twig
│   ├── logout.twig
│   └── view.twig
└── web
    ├── css
    │   ├── bootstrap.min.css
    │   └── style.css
    ├── index.php
    ├── js
    │   ├── bootstrap.min.js
    │   ├── jquery-2.0.3.min.js
    │   ├── jquery-ui-1.10.3.min.js
    └── twiglib.php

自定义服务提供商在此何处以及包括自定义非作曲家的库?在特定名称空间下的SRC中?还是在供应商文件夹中?

我可以从何处将第三方服务提供商放在我的Silex应用程序中,而不是建议供应商文件夹,但是随后在Silex中创建新的服务提供商,与此相矛盾,并建议不要编辑供应商文件夹并将其放入SRC文件夹中。

是否有官方标准?

供应商文件夹仅包含作曲家依赖性,因此可以肯定的是,手动添加一些特定的类是不良的设计。您可以将您的自定义服务提供商放入单独的GIT存储库中,并通过作曲家在项目中使用它们。或者,如果这种方式太难来了,则可以将它们放入SRC文件夹中,在这种情况下,它可以是单独的文件夹服务,或者,如果您喜欢域驱动的设计,则可以将每个服务提供商放入特定域的文件夹中(即,在您的情况下,它可以像/src/dashboard/dashboardservice.php一样smth。不确定是否存在任何常见的标准。

最新更新