Twig (шаблонски систем)
Изглед
Оригинални аутор(и) | Армин Ронахер[1], Фабијен Потенције |
---|---|
Програмер(и) | СенсиоЛабс |
Прво издање | 12. октобар 2009. |
Стабилно издање | 2.4.4[2]
/ 27. септембар 2017. |
Репозиторијум | |
Написан у | PHP |
Оперативни систем | Вишеплатформски |
Тип | шаблонски систем |
Лиценца | БСД лиценца |
Веб-сајт | twig |
Твиг (енгл. Twig) је шаблонски систем за PHP програмски језик. Синтакса потиче од Џинџа шаблонског система и Ђанго веб фејмворка.[3] Твиг је производ отвореног кода[4], дистрибуиран под БСД лиценцом који одржава Фабијен Потенције. Творац оригиналне верзије је Армин Ронахер. Симфони 2 PHP фрејмворк долази са подршком за Твиг као његовим подразумеваним шаблонским системом.[5]
Карактеристике
[уреди | уреди извор]- сложена контрола тока
- аутоматска излазна секвенца
- наслеђивање шаблона
- филтрирање променљивих
- подршка за i18n (gettext)
- макрои
- у потпуности проширив[3][6]
Твиг подржавају следећа Интегрисанa развојнa окружењa енгл. Integrated Development Environments - IDE:
И следећи уређивачи текста:
Синтакса
[уреди | уреди извор]Твиг дефинише три врсте граничника:
- {% ... %}, који се користи за извршавање наредби, као што су for петље.
- {{ ... }}, који се користи да прикаже садржај променљивих или резултат израчунавања израза (нпр. наслеђен Твиг шаблон са
{{ parent() }}
). - {# ... #}, који се користи да се додају коментари у шаблону. Ови коментари се не приказују на страници.
Апостроф (') је излазни знак.
Приоритет оператора иде одмањег ка већем приоритету:[7]
Оператор | Улога |
---|---|
b-and | Булова променљива и |
b-xor | Ексклузивно или |
b-or | Булова променљива или |
or | Или |
and | И |
== | Једнако |
!= | Различито |
< | Мање |
> | Веће |
>= | Веће или једнако |
<= | Мање или једнако |
in | у |
matches | Одговара |
starts with | Почиње са |
ends with | Завршава се са |
.. | Низ(нпр: 1..5 )
|
+ | Плус |
- | Минус |
~ | Надовезивање |
* | Множење |
/ | Дељење |
// | Дељење са заокруживањем на мањи број |
% | Модуо |
is | Тест (нпр: is defined или is not empty )
|
** | Степен |
| | Филтер[8] |
[] | Улаз у низ |
. | Атрибут или метод објекта (нпр: country.name )
|
Пример
[уреди | уреди извор]Пример испод демонстрира основне могућнсоти Твига.
{% extends "base.html" %}
{% block navigation %}
<ul id="navigation">
{% for item in navigation %}
<li>
<a href="{{ item.href }}">
{% if item.level == 2%} {% endif %}
{{ item.caption|upper }}
</a>
</li>
{% endfor %}
</ul>
{% endblock navigation %}
Референце
[уреди | уреди извор]- ^ Оригинални репозиторијум
- ^ Верзије · twigphp/Twig · ГитХаб
- ^ а б „Твиг документација за дизајнере шаблона”. Архивирано из оригинала 03. 01. 2017. г. Приступљено 20. 03. 2017.
- ^ Твиг репозиторијум на ГитХаб-у
- ^ „Симфони2 документација”. Архивирано из оригинала 5. 8. 2010. г. Приступљено 20. 3. 2017.
- ^ „Проширење Твиг шаблонског система”. Архивирано из оригинала 11. 09. 2016. г. Приступљено 20. 03. 2017.
- ^ „Твиг за дизајнере шаблона - Твиг документација”. Архивирано из оригинала 03. 01. 2017. г. Приступљено 20. 03. 2017.
- ^ „Филтери - Твиг документација”. Архивирано из оригинала 02. 01. 2017. г. Приступљено 20. 03. 2017.
Спољашње везе
[уреди | уреди извор]- Твиг званични веб-сајт Архивирано на сајту Wayback Machine (9. јул 2017)
- Потенције, Фабијен (7. 10. 2009). „Шаблонски системи у PHP-у”. Приступљено 6. 4. 2011.
- Потенције, Фабијен (20. 11. 2009). „Шаблонски системи у PHP-у” (на језику: руски). Приступљено 6. 4. 2011.