gglnx / twig-empty-coalesce
The empty test and default filter as an operator
Installs: 5 671
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/gglnx/twig-empty-coalesce
Requires
- php: >=7.2.5
- twig/twig: ^2.14|^3.0
Requires (Dev)
README
This library adds a new operator expression to Twig with three question marks (???) to check if the left value is defined, not null and not empty. Works the same way as the empty test and the |default filter.
{% set _null = null %}
{% set _empty = '' %}
{# Null Coalesce: Output will be string(0) "" because _empty is defined and not exactly null #}
{{ dump(_undefined ?? _null ?? _empty ?? 'fallback') }}
{# Default Filter: Output will be string(8) "fallback" because _empty is defined, but an empty string #}
{{ dump(_undefined | default(_null | default(_empty | default('fallback')))) }}
{# Same as the default filter, but much more readable #}
{{ dump(_undefined ??? _null ??? _empty ??? 'fallback') }}
Requirements
- Twig >=2.14 and Twig >=3.0
- PHP >=7.4
Installation
The recommended way to install this loader is via Composer:
composer require gglnx/twig-empty-coalesce
You can install this library as extension in:
require_once '/path/to/vendor/autoload.php'; $twig = new \Twig\Environment($loader); $twig->addExtension(new \Gglnx\TwigEmptyCoalesce\Extension\EmptyCoalesceExtension());