Sensiolabs/Symfony重复组件:我应该使用哪些组件?

Hap*_*per 3 symfony php-5.3

疙瘩或容器?

http://pimple.sensiolabs.org/

http://components.symfony-project.org/dependency-injection/

树枝或模板?

http://twig.sensiolabs.org/

http://components.symfony-project.org/templating/

我不是要求意见,我只是想知道这个:

  • 为什么这些组件使用不同的名称分发?
  • 哪些更新?
  • symfony 2使用的是哪些?
  • 是否有像Pimple和Twig这样的组件列表?就像容器和模板一样:http://components.symfony-project.org/

igo*_*orw 7

您列出了3类项目.

  1. 第三方库.虽然由sensiolabs提供,但这些是不在symfony命名空间下的独立库.

  2. 旧的Symfony 1.x组件,也是独立的,但在Symfony命名空间下.可在components.symfony-project.org上获得,与PHP 5.2兼容.

  3. Symfony2组件,Symfony2软件包的一部分,但也可以单独使用.兼容PHP 5.3+.

好的,让我们对你列出的项目进行分类.

第1类

  • 疙瘩
  • 枝条

Symfony2目前没有Pimple软件包.建议使用的方法是使用框架附带的Symfony2 DependencyInjection组件.

注意:Silex大量使用Pimple ,所以如果你喜欢Pimple,你可能想看看它.它是一个基于Symfony2组件的不同框架.

另一方面,Twig受Symfony2核心框架的支持.有一个核心捆绑包,大多数文档建议你使用它.这绝对是在Symfony2中进行模板化的推荐方法.

有关更多这些的列表,请查看Fabien Potencier的GitHub配置文件.IMO的重要组成部分是:Twig,Silex,Pimple,Goutte,(Pirum,Sismo).

第2类

  • Symfony组件DependencyInjection
  • Symfony组件模板化

这些都是旧的,不应再使用了.

第3类

  • Symfony2 DependencyInjection组件
  • Symfony2模板组件
  • Symfony2 Twig Bundle

这些都是Symfony2框架的一部分,您应该使用它们.它们是最新最好的.

希望能回答你的问题!