danilovl/static-container-twig-extension-bundle
Twig extension provide sharing data between templates.
Install danilovl/static-container-twig-extension-bundle package by Composer:
composer require danilovl/static-container-twig-extension-bundle
Add the StaticContainerTwigExtensionBundle to your application's bundles if does not add automatically:
<?php
// config/bundles.php
return [
// ...
Danilovl\StaticContainerTwigExtensionBundle\StaticContainerTwigExtensionBundle::class => ['all' => true]
];
Create some key with value.
{# templates/first.html.twig #}
{{ static_container_create('key', true) }}
{{ static_container_create('keyObject', object) }}
{{ static_container_create('keyArray', {'one': 1, 'two': 2}) }}
{{ static_container_create('keyWithDefaultValueNull') }}
{{ static_container_create('keyCounter', 1) }}
Control if the key exists in another template.
{# templates/second.html.twig #}
{% if static_container_has('keyCounter') == true %}
{{ static_container_update('keyCounter', 2) }}
{% endif %}
Control if the key exists and print it.
{# templates/third.html.twig #}
{% if static_container_has('keyCounter') == true %}
{{ static_container_get('keyCounter') }}
{% endif %}
Remove key.
{# templates/third.html.twig #}
{{ static_container_remove('sameKey') }}
The ApplyFilterTwigExtensionBundle is open-sourced software licensed under the MIT license.
How can I help you explore Laravel packages today?