Twig (шаблонски систем)

С Википедије, слободне енциклопедије
Твиг енгл. Twig
Оригинални аутор(и)Армин Ронахер[1],
Фабијен Потенције
Програмер(и)СенсиоЛабс
Прво издање12. октобар 2009. (2009-10-12)
Стабилно издање
2.4.4[2] / 27. септембар 2017. (2017-09-27)
Спремиште Уреди на Википодацима
Написан уPHP
Оперативни системВишеплатформски
Типшаблонски систем
ЛиценцаБСД лиценца
Веб-сајтtwig.symfony.com

Твиг (енгл. 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%}&nbsp;&nbsp;{% endif %}
                {{ item.caption|upper }}
            </a>
        </li>
    {% endfor %}
    </ul>
{% endblock navigation %}

Референце[уреди | уреди извор]

  1. ^ Оригинални репозиторијум
  2. ^ Верзије · twigphp/Twig · ГитХаб
  3. ^ а б „Твиг документација за дизајнере шаблона”. Архивирано из оригинала на датум 03. 01. 2017. Приступљено 20. 03. 2017. 
  4. ^ Твиг репозиторијум на ГитХаб-у
  5. ^ „Симфони2 документација”. Архивирано из оригинала на датум 5. 8. 2010. Приступљено 20. 3. 2017. 
  6. ^ „Проширење Твиг шаблонског система”. Архивирано из оригинала на датум 11. 09. 2016. Приступљено 20. 03. 2017. 
  7. ^ „Твиг за дизајнере шаблона - Твиг документација”. Архивирано из оригинала на датум 03. 01. 2017. Приступљено 20. 03. 2017. 
  8. ^ „Филтери - Твиг документација”. Архивирано из оригинала на датум 02. 01. 2017. Приступљено 20. 03. 2017. 

Спољашње везе[уреди | уреди извор]