Gally
Gally
A Twig a PHP programozási nyelv sablonmotorja , amelyet alapértelmezés szerint a Symfony keretrendszer használ .
Jinja , egy Python sablonmotor ihlette .
Jellemzők
- komplex áramlásszabályozás
- automatikus kipufogó
- sablon öröklés
- változó szűrők
- nemzetközivé válás (via gettext)
- makrók
- bővíthető nyelv.
Integrált fejlesztői környezetek támogatják , például:
És a szövegszerkesztők:
Szintaxis
- {{...}}: hívás egy változóra vagy egy PHP függvényre, vagy egy szülő Twig-sablonra ( {{ parent() }}).
- {# ... #}: Hozzászólások.
- {% ...%}: parancs, például hozzárendelés, feltétel, ciklus vagy HTML-blokk.
- {% set foo = 'bar'%}: hozzárendelés.
- {%, ha i meg van határozva, és i == 1%} ... {% endif%}: feltétel.
- {% for i in 0..10%} ... ... {% endfor%}: számláló ciklusban.
- ': menekülési karakter.
Iteratív táblázat létrehozása:
{% set myArray = [1, 2] %}
Asszociatív tömb:
{% set myArray = {'key': 'value'} %}
Az üzemeltetők elsőbbsége
Legalább a legmagasabb prioritásra:
Operátor |
Szerep
|
---|
Zenekar |
És logikai
|
b-xor |
Vagy exkluzív
|
b-vagy |
Vagy logikai
|
Arany |
Vagy
|
és |
És
|
== |
Egyenlő-e
|
! = |
Vajon más
|
< |
Alsóbbrendű
|
> |
kiváló
|
> = |
Nagyobb vagy egyenlő
|
<= |
Kevesebb vagy egyenlő
|
ban ben |
Ban ben
|
mérkőzések |
Megfelel
|
azzal kezdődik |
Azzal kezdődik
|
végződik |
Végül
|
.. |
Szekvencia (pl. 1..5)
|
+ |
Több
|
- |
Kevésbé
|
~ |
Összefűzés
|
* |
Szorzás
|
/ |
Osztály
|
// |
Osztály kerekítve lefelé
|
% |
Modulo
|
van |
Teszt (pl .: is definedvagy is not empty)
|
** |
Erő
|
| |
Szűrt
|
[] |
Táblázat bejegyzés
|
. |
Objektum attribútuma vagy metódusa (pl. country.name)
|
Szűrők
A szűrők biztosítják a feldolgozást egy kifejezésen, ha azt csövekkel elválasztva helyezik el. Például :
-
capitalize : nagybetűvel teszi a karakterlánc első betűjét.
-
upper : a karakterláncot nagybetűvel teszi.
-
first : a táblázat első sorát jeleníti meg.
-
length : a változó méretét adja vissza.
Speciális változók
-
loopa hurok információit tartalmazza, amelyben található. Például loop.indexmegadja a már megtörtént iterációk számát.
- A globális változók aláhúzással kezdődnek, például:
- _route (az URL része a domain után)
- _self (az aktuális fájl neve)
Tehát, hogy megkapjuk az oldal útvonalát: {{ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) }}
- A CGI környezeti változók , mint pl{{ app.request.server.get('SERVER_NAME') }}
Példa
Ha az "base.html" fájl tartalmazza az összes oldal közös HTML fejlécét és láblécét, ezek az oldalak örökölhetik a szóval 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 %}
Megjegyzések és hivatkozások
-
" 3.3.0 kiadás " ,2021. február 8(elérhető : 2021. február 17. )
-
http://fabien.potencier.org/templating-engines-in-php.html#twig
-
Symfony , „ Szűrők - Dokumentáció - Twig - A rugalmas, gyors és biztonságos PHP sablonmotor ” , a twig.sensiolabs.org oldalon
-
Symfony , „ Twig kiterjesztése - Dokumentáció - Twig - A rugalmas, gyors és biztonságos PHP sablonmotor ” , a twig.sensiolabs.org oldalon
-
Symfony , " Twig sablontervezőknek - Dokumentáció - Twig - A rugalmas, gyors és biztonságos PHP sablonmotor " , a twig.sensiolabs.org oldalon
-
Symfony , " set - Documentation - Twig - A rugalmas, gyors és biztonságos PHP sablonmotor " , a twig.sensiolabs.org oldalon
-
Symfony , " Twig sablontervezőknek - Dokumentáció - Twig - A rugalmas, gyors és biztonságos PHP sablonmotor " , a twig.sensiolabs.org oldalon