WARNING:
You are browsing the documentation for Symfony 4.0 which is not maintained anymore.
Consider upgrading your projects to Symfony 5.2.
How to Access the User, Request, Session & more in Twig via the app
Variable
How to Access the User, Request, Session & more in Twig via the app
Variable¶
During each request, Symfony will set a global template variable app
in both Twig and PHP template engines by default. The app
variable
is a Symfony\Bridge\Twig\AppVariable
instance which will give you access to some application specific variables
automatically:
app.user
- The representation of the current user or
null
if there is none. The value stored in this variable can be aSymfony\Component\Security\Core\User\UserInterface
object, any other object which implements a__toString()
method or even a regular string. app.request
- The
Symfony\Component\HttpFoundation\Request
object that represents the current request (depending on your application, this can be a sub-request or a regular request, as explained later). app.session
- The
Symfony\Component\HttpFoundation\Session\Session
object that represents the current user’s session ornull
if there is none. app.environment
- The name of the current environment (
dev
,prod
, etc). app.debug
- True if in debug mode. False otherwise.
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
You can add your own global template variables, see How to Inject Variables into all Templates (i.e. global Variables).
This work, including the code samples, is licensed under a Creative Commons BY-SA 3.0 license.