Twig (шаблонски систем)
Оригинални аутор(и) | Армин Ронахер[1], Фабијен Потенције |
---|---|
Програмер(и) | СенсиоЛабс |
Прво издање | 12. октобар 2009. (2009-10-12) |
Стабилно издање | 2.4.4[2] / 27. септембар 2017. (2017-09-27) |
Репозиторијум |
![]() |
Написан у | 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.