我在Symfony2中构建一个通过API接收HTML字符串的应用程序,对它做了一些工作(想想像Tidy库这样的东西,只是用不同的目的),然后返回固定的HTML。 / p>
完成所有工作的东西主要是在服务中编写,因为他们不需要返回Response对象。
我在哪里存储这些服务?我把它们捆绑在一起,但没有明显的地方存放它们。我知道它们可以存储在任何地方,但我想知道默认约定是什么。
答案 0 :(得分:7)
如果该代码不必在Symfony2项目之外可重复使用,则可以将其放入捆绑包中。
我会选择类似的东西:
Acme\HtmlCleanerBundle\Cleaner\SimpleCleaner.php
由于它是一个包,您可以将其解压缩到一个单独的包中,并将其重新用于其他Symfony2项目。
如果您希望代码完全可重用且独立,我建议您将其解压缩到单独的库中。您仍然可以依赖于单个组件(无耻插件:您可以通过composer管理这些依赖项,这些依赖项将由Symfony 2.1使用。)
如果您决定沿着这条路走下去,那么捆绑包只是通过为它提供DI容器配置将库集成到Symfony2中。