gpt4 book ai didi

php - 自定义服务提供商的silex文件结构

转载 作者:行者123 更新时间:2023-12-04 17:03:02 24 4
gpt4 key购买 nike

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

我知道 silex 项目的首选文件结构,但在任何地方都找不到有关自定义类应该适合此结构的位置的信息。 Composer 提供的所有库自然都在 vendor 文件夹中,自定义的库去哪里了?

目前(缩小空间)我的目录结构如下:

.
├── 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

自定义服务提供商和自定义非 Composer 包含的库在哪里?在特定命名空间下的 src 中?或者在供应商文件夹中?

我可以从 Where to put 3rd party service providers in my Silex app 看到比建议的供应商文件夹,然后 Creating new service providers in Silex , 与此相矛盾并建议不要编辑 vendor 文件夹并将其放在 src 文件夹中。

有官方标准吗?

最佳答案

Vendor 文件夹应该只包含 composer 依赖项,所以手动添加一些特定的类肯定是​​一个糟糕的设计。您可以将自定义服务提供者放入单独的 git 存储库中,并通过 Composer 在您的项目中使用它们。或者,如果这种方式难以实现,您可以将它们放入您的 src 文件夹中,在这种情况下,它可以是一个单独的文件夹 Services,或者,如果您更喜欢域驱动设计,您可以将每个服务提供者放入您的域特定文件夹中(即在您的情况下,它可能类似于/src/Dashboard/DashboardService.php)。不确定是否存在任何通用标准。

关于php - 自定义服务提供商的silex文件结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30239962/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com