Дублированные компоненты Sensiolabs / Symfony: какие следует использовать? - PullRequest
3 голосов
/ 07 октября 2011

Прыщ или Контейнер?

http://pimple.sensiolabs.org/

http://components.symfony -project.org / dependency-инъекция /

Веточка или Шаблон?

http://twig.sensiolabs.org/

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

Я не спрашиваю мнения, я просто хочузнать это:

  • Почему эти компоненты распространяются под разными именами?
  • Какие из них более новые?
  • Какие из них используются Symfony 2?
  • Есть ли список таких компонентов, как Pimple и Twig?Как и для Контейнеров и Шаблонов: http://components.symfony -project.org /

Ответы [ 2 ]

7 голосов
/ 07 октября 2011

Вы перечислили 3 категории проектов.

  1. Сторонняя библиотека. Хотя они предоставлены sensiolabs, это автономные библиотеки, не входящие в пространство имен Symfony.

  2. Старые компоненты Symfony 1.x, также автономные, но в пространстве имен Symfony. Доступно по адресу components.symfony-project.org , совместимо с PHP 5.2.

  3. Компоненты Symfony2, часть пакета Symfony2 , но также могут использоваться автономно. Совместим с PHP 5.3 +.

Хорошо, давайте разберем перечисленные вами проекты.

Категория 1

  • Прыщ
  • Twig

В настоящее время нет комплекта Pimple для Symfony2. Рекомендуемый способ - использовать компонент Symfony2 DependencyInjection, который поставляется вместе с платформой.

Примечание: Pimple интенсивно используется Silex , поэтому, если вам нравится Pimple, вы можете взглянуть на него. Это другой фреймворк, основанный на компонентах Symfony2.

Twig, с другой стороны, очень хорошо поддерживается фреймворком ядра Symfony2. Для этого есть базовый комплект, и большая часть документации предлагает вам его использовать. Это определенно рекомендуемый способ создания шаблонов в Symfony2.

Чтобы получить список других, взгляните на профиль Fabien Potencier GitHub . ИМО важными из них являются: Веточка, Силекс, Прыщ, Гут, (Пирум, Сисмо).

Категория 2

  • Зависимость компонентов SymfonyInjection
  • Шаблонные компоненты Symfony

Они старые и больше не должны использоваться.

Категория 3

  • Symfony2 Компонент DependencyInjection
  • Компонент шаблонов Symfony2
  • Комплект веточек Symfony2

Все они являются частью инфраструктуры Symfony2, и вы должны их использовать. Они самые последние и лучшие.

Надеюсь, что отвечает на ваши вопросы!

1 голос
/ 30 ноября 2011

Я думаю, что вы могли бы использовать http://components.symfony -project.org компоненты, если у вас есть какой-то устаревший проект, который использует php 5.2 или ваш сервер имеет php старше 5.3.

У меня есть проект, я делаю некоторые изменения, но это устаревший php 5.2, поэтому я решил использовать старые компоненты (http://components.symfony -project.org) вместо новых компонентов symfony 2.0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...