Twig embed vs include, любая причина для использования включает

Почему бы просто не использовать embed?

В соответствии с документами тег embed сочетает в себе поведение тегов include и extend.

Я понимаю, что во многих случаях вам не нужно делать расширения и только хотите отображать содержимое другого шаблона, но мне кажется, что вы всегда можете использовать встроенную функцию и служить этой цели. Есть ли какие-либо последствия для внедрения встраивания? Любые функциональные различия, которые мне не хватает?

Ответ 1

Я бы обобщил различия и сходства между Embed и Include, как показано ниже,

  • Оба были добавлены в twig, чтобы сделать фрагменты HTML-кода повторно используемыми.
  • Оба используются для функционального разделения шаблонов (нижний колонтитул, заголовок,...)
  • Оба динамические.
  • Include используется для переноса кода с негибкой структурой HTML.
  • Embed обеспечивает гибкость.

В зависимости от различий Include следует использовать только, когда вам нужно разбить шаблон на многие функциональные подшаблоны и повторно использовать завернутый код в другом месте.

В то время как Embed используется, когда вам нужно настроить повторно используемые шаблоны.

Итак, это скорее вопрос дизайна, чем что-либо другое (производительность, выполнение кода...)

Выберите помощника, который соответствует вашим потребностям.