Twig

The flexible, fast, and secure
template engine for PHP

a Symfony Product
You are reading the documentation for Twig 2.x. Switch to the documentation for Twig 1.x. 3.x.
Warning Twig version 2.x end of maintenance is scheduled for December 2023.

Questions & Feedback

License

Twig documentation is licensed under the new BSD license.

dump

The dump function dumps information about a template variable. This is mostly useful to debug a template that does not behave as expected by introspecting its variables:

1
{{ dump(user) }}

Note

The dump function is not available by default. You must add the \Twig\Extension\DebugExtension extension explicitly when creating your Twig environment:

1
2
3
4
5
$twig = new \Twig\Environment($loader, [
    'debug' => true,
    // ...
]);
$twig->addExtension(new \Twig\Extension\DebugExtension());

Even when enabled, the dump function won't display anything if the debug option on the environment is not enabled (to avoid leaking debug information on a production server).

In an HTML context, wrap the output with a pre tag to make it easier to read:

1
2
3
<pre>
    {{ dump(user) }}
</pre>

Tip

Using a pre tag is not needed when XDebug is enabled and html_errors is on; as a bonus, the output is also nicer with XDebug enabled.

You can debug several variables by passing them as additional arguments:

1
{{ dump(user, categories) }}

If you don't pass any value, all variables from the current context are dumped:

1
{{ dump() }}

Note

Internally, Twig uses the PHP var_dump function.

Arguments

  • context: The context to dump
Website powered by Symfony and Twig, deployed on
The Twig logo is © 2010-2024 Symfony