php - Symfony 2 可重用包

标签 php symfony reusability bundles

假设我想在 Symfony 中创建一个位于 BlogBu​​ndle 中的博客。但是这个 BlogBu​​ndle 依赖于其他包,如 FOSUserBundle、KnpPaginator 包、FMBbCodeBundle 或我最终使用的任何东西。这是否意味着我不能真正在另一个项目中重用 BlogBu​​ndle。 Best Practices for Reusable Bundles symfony 食谱的章节说

A bundle must not embed third-party PHP libraries. It should rely on the standard Symfony autoloading instead.

但这到底是什么意思呢?我不能使用任何不是我编程的东西吗?

如果是这样的话,我将不得不重新发明轮子来解决我在开发 bundle 时遇到的最基本的问题。例如,我必须想出自己的分页器来对内容进行分页,创建自己的用户管理器等等。 我不认为这样做有什么意义,因为我会浪费我的时间来解决已经做得比我做得更好的问题。

或者食谱是否意味着我不能使用任何不在 bundle 中的东西。这对我来说更有意义。

真正让我恼火的是,没有人真正做过 blogbundle 或类似的东西,得到很好的反馈,并在顶部列表的任何地方被提及。我知道,Symfony 并不意味着有一个开箱即用的解决方案并且需要一些编码,但仍然如此。我能找到的所有似乎非常受欢迎的 bundle 都是那些执行诸如解析 BB 代码、处理用户管理和其他难以完成且乏味的事情的 bundle ,但没有比只完成一项任务更大的事情了。

我希望你明白我的意思,并能帮助我解决我的问题。提前致谢!

最佳答案

A bundle must not embed third-party PHP libraries. It should rely on the standard Symfony autoloading instead.

这意味着您不应该将其他库的代码复制到您的 Bundle(目录)中。相反,您应该将它们作为依赖项添加到您的 composer.json

关于php - Symfony 2 可重用包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36363958/

相关文章:

php - 带有 codeigniter 的 IPN 模拟器 403

php - Laravel 仅使用 MongoDB 还是使用 MongoDB + MySQL 进行身份验证?

php - willdurand hatoas bundle 的分页路由问题

javascript - 通过 Javascript 压缩重复使用的 HTML(基于变量的变化)

deadlock - 可重复使用的Barrier解决方案陷入僵局?

php - 如何向用户显示捕获的错误,避免这些常见的陷阱?

php - MySQL operator SELECT 如何从相似的行中得到一个精确的行结果?

php - 如何将自定义列添加到查询生成器中的选择?

php - 外键约束不适用于 Doctrine/Symfony 和 SQLite

android - 转换库中的 Android 项目以复制几乎没有更改的应用程序