Различия циклов в Twig
чем отличается {% for banner in banners|batch(items) %} от {% for banner in banners %} Давайте разберем подробно. 1. {% for banner in banners %} (Простой цикл) Это стандартный цикл, который вы…
чем отличается {% for banner in banners|batch(items) %} от {% for banner in banners %} Давайте разберем подробно. 1. {% for banner in banners %} (Простой цикл) Это стандартный цикл, который вы…
Что такое Twig? Twig — это современный, гибкий и безопасный шаблонизатор для PHP. Он позволяет отделять логику приложения от представления (HTML). Установка (через Composer) composer require "twig/twig:^3.0" Простейший пример //…
Composer — это удобный инструмент для управления зависимостями в PHP-проектах. Он позволяет легко подключать сторонние библиотеки и компоненты, автоматически загружая их и всё необходимое окружение. Достаточно указать нужный пакет —…
Передача переменных $context = [ 'user' => ['name' => 'Иван', 'age' => 30], 'title' => 'Добро пожаловать' ]; echo $twig->render('profile.html.twig', $context); profile.html.twig <h1>{{ title }}</h1> <p>Имя: {{ user.name }}, возраст:…
Условия (if) {% if user.age >= 18 %} <p>Вы совершеннолетний.</p> {% else %} <p>Вы несовершеннолетний.</p> {% endif %} Можно использовать elif, логические операторы (and, or, not). Циклы (for) <ul> {%…
Базовый шаблон (base.html.twig) <!DOCTYPE html> <html> <head> <title>{% block title %}Сайт{% endblock %}</title> </head> <body> <header>Меню</header> <main> {% block content %}{% endblock %} </main> <footer>© 2025</footer> </body> </html> Дочерний шаблон…
Макросы (аналог функций в шаблонах) macros.html.twig {% macro alert(type, message) %} <div class="alert alert-{{ type }}">{{ message }}</div> {% endmacro %} {% from "macros.html.twig" import alert %} Использование: {{ alert('success',…