Větvička
Větvička
Twig je stroj šablon pro programovací jazyk PHP , který se standardně používá v rámci Symfony .
To bylo inspirováno Jinja , Python šablony motoru .
Funkce
- komplexní řízení toku
- automatický výfuk
- dědičnost šablony
- variabilní filtry
- internacionalizace (prostřednictvím gettext)
- makra
- rozšiřitelný jazyk.
Podporováno integrovanými vývojovými prostředími, jako jsou:
A textoví redaktoři:
Syntax
- {{...}}: volání proměnné nebo funkce PHP nebo nadřazené šablony Twig ( {{ parent() }}).
- {# ... #}: komentáře.
- {% ...%}: příkaz, jako úkol, podmínka, smyčka nebo blok HTML.
- {% set foo = 'bar'%}: úkol.
- {%, pokud je definováno i a i == 1%} ... {% endif%}: podmínka.
- {% pro i v 0..10%} ... {% endfor%}: počítadlo ve smyčce.
- ': úniková postava.
Vytvoření iterativní tabulky:
{% set myArray = [1, 2] %}
Asociativní pole:
{% set myArray = {'key': 'value'} %}
Přednost operátorů
Alespoň na nejvyšší prioritu:
Operátor |
Role
|
---|
kapela |
A booleovský
|
b-xor |
Nebo exkluzivní
|
b-nebo |
Nebo booleovské
|
zlato |
Nebo
|
a |
A
|
== |
Je to stejné
|
! = |
Je to jiné?
|
< |
Nižší
|
> |
Nadřízený
|
> = |
Větší nebo rovno
|
<= |
Méně nebo rovno
|
v |
v
|
zápasy |
Odpovídá
|
začíná s |
Začíná s
|
končí s |
Konec
|
.. |
Pořadí (např. 1..5)
|
+ |
Více
|
- |
Méně
|
~ |
Zřetězení
|
* |
Násobení
|
/ |
Divize
|
// |
Divize zaokrouhlena dolů
|
% |
Modulo
|
je |
Test (např .: is definednebo is not empty)
|
** |
Napájení
|
| |
Filtrovaný
|
[] |
Vstup do tabulky
|
. |
Atribut nebo metoda objektu (např. country.name)
|
Filtry
Filtry zajišťují zpracování výrazu, pokud je umístěn za ním odděleny rourami. Například :
-
capitalize : vloží velké písmeno na první písmeno řetězce znaků.
-
upper : vloží řetězec velkými písmeny.
-
first : zobrazí první řádek tabulky.
-
length : vrací velikost proměnné.
Speciální proměnné
-
loopobsahuje informace o smyčce, ve které se nachází. Například loop.indexudává počet iterací, které již proběhly.
- Globální proměnné začínají podtržítky, například:
- _route (část adresy URL za doménou)
- _self (název aktuálního souboru)
Chcete-li získat trasu stránky: {{ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) }}
- Tyto proměnné CGI prostředí , jako je například{{ app.request.server.get('SERVER_NAME') }}
Příklad
Pokud soubor „base.html“ obsahuje záhlaví a zápatí HTML společné pro všechny stránky, mohou jej tyto stránky zdědit spolu se slovem extends.
{% extends "base.html.twig" %}
{% block navigation %}
<ul id="navigation">
{% for item in navigation %}
<li>
<a href="{{ item.href }}">
{% if item.level == 2 %}
{{ item.name|upper }}
{% endif %}
</a>
</li>
{% endfor %}
</ul>
{% endblock navigation %}
Poznámky a odkazy
-
" Vydání 3.3.0 " ,8. února 2021(zpřístupněno 17. února 2021 )
-
http://fabien.potencier.org/templating-engines-in-php.html#twig
-
Symfony , „ Filtry - Dokumentace - Větvička - Flexibilní, rychlý a bezpečný šablonový modul PHP “ , na twig.sensiolabs.org
-
Symfony , „ Rozšíření větvičky - Dokumentace - Větvička - flexibilní, rychlý a bezpečný modul šablon PHP “ na twig.sensiolabs.org
-
Symfony , „ Větvička pro návrháře šablon - Dokumentace - Větvička - Flexibilní, rychlý a bezpečný modul šablon PHP “ , na twig.sensiolabs.org
-
Symfony , „ sada - Dokumentace - Větvička - Flexibilní, rychlý a bezpečný šablonový modul PHP “ , na twig.sensiolabs.org
-
Symfony , „ Větvička pro návrháře šablon - Dokumentace - Větvička - Flexibilní, rychlý a bezpečný modul šablon PHP “ , na twig.sensiolabs.org