Как получить доступ к пользователю, запросу, сессии и др. в Twig через переменную <code translate="no" class="notranslate">app</code>
Как получить доступ к пользователю, запросу, сессии и др. в Twig через переменную app
Во время каждого запроса, Symfony будет устанавливать глобальную переменную шаблона app
как в Twig, так и в PHP механизме шаблона по умолчанию. Переменна app
- это экземпляр
AppVariable, который будет давать вам доступ к некоторым
особенным переменным приложения автоматически:
app.user
-
Представление текущего пользователя или
null
при его отсутствии. Значение, хранящееся в этой переменной может быть объектом UserInterface, любым другим объектом, реализующим метод__toString()
, или даже обычной строкой. app.request
- Объект Request, который представляет текущий запрос (в зависимости от вашего приложения, это может быть под-запросом или обычным запросом, как будет объясняться позже).
app.session
-
Объект Session, который представляет
сессию текущего пользователя или
null
, при её отсутствии. app.environment
-
Имя текущего окружения (
dev
,prod
, и т.д.). app.debug
- "True" (верно) в режиме отладки. "False" (неверно) в других случаях.
- Twig
- PHP
1 2 3 4 5
<p>Username: {{ app.user.username }}</p>
{% if app.debug %}
<p>Request method: {{ app.request.method }}</p>
<p>Application Environment: {{ app.environment }}</p>
{% endif %}
Tip
Вы можете добавлять ваши собственные глобальные переменные шаблонов, смотрите Как автоматически внедрять переменные во все шаблоны.