Symfony和Silex之间的区别

2022-08-30 13:05:37

我想尝试Silex,但我有一些问题。

我知道使用Symfony2,我想知道Silex是否与Symfony非常不同,或者它是一回事(相同的操作,相同的代码...)?

此外,Silex适用于小型PHP项目,Symfony适用于中型或大型项目,这是真的吗?


答案 1

有几件值得注意的事情:

  • Silex基于Symfony2组件,就像Symfony2框架一样。因此,它可以被视为组件的替代用户界面(用户是Web开发人员)。
  • 由于它们使用相同的基础,因此它们之间的迁移应该相对容易。
  • 就像Symfony2一样,Silex主要是一个控制器框架。它为您提供了一些结构,但模型和视图部分由第三方库(如 Twig 或 Doctrine)处理。
  • 由于您的业务逻辑无论如何都不应该在您的控制器中,因此如果您将该代码分离出来并保持控制器的轻巧,则项目大小的限制因素将仅是您拥有的路由量。

也就是说,Silex不会给你Symfony2拥有的捆绑包。


答案 2

以下是关于何时使用Silex的一些有趣想法(特别是在评论中):https://web.archive.org/web/20160131151109/http://www.testically.org/2011/10/11/is-there-a-specific-situation-when-to-use-a-php-micro-framework-like-silex/

Silex本身非常裸露,这意味着如果你想要更多,那么只需要路由和测试,你需要以服务的形式添加特定的功能(DB,Twig...)。我建议看看一些现成的盘子,它们为您提供了这个:https://github.com/lyrixx/Silex-Kitchen-Editionhttps://github.com/ivoba/superleansilexplate(这是我:))

另一点是Silex的占地面积可能比Symfony2轻,所以如果你需要一个更小更快的站点,Silex值得考虑。


推荐