Větvička

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 1. prosince 2018; kontroly vyžadují 2 úpravy .
Větvička
Typ procesor šablon
Autor Armin Ronacher, Fabien Potencier
Vývojář Fabien Potencier, Sensio Labs
Zapsáno v PHP
Operační systém multiplatformní
První vydání 12. října 2008
Nejnovější verze
Stát aktuální
Licence BSD
webová stránka twig.symfony.com

Twig  je open source překladač šablon napsaný v programovacím jazyce PHP . Armin Ronacher napsal Twig v roce 2008 pro blogovací platformu Chyrp. K vývoji se již nevrátil a více se věnoval vývoji Pythonu . Syntaxe šablonovacího jazyka Twig pochází z šablonovacích motorů Jinja a Django , z nichž první byl také vytvořen Ronacherem. Myšlenku tohoto šablonovacího enginu vyvinul a podporuje Fabien Potensier, hlavní vývojář a ideolog frameworku Symfony , který standardně používá Twig.

Sám Fabien o něm říká:

Když jsem začal hledat PHP šablonovač, zaměřil jsem se na knihovny, které napodobují Djangovo chování. Po pár hodinách googlování byla Twig nalezena. Jeho autorem je Armin Ronacher, známý z projektu Jinja (Python šablonovací engine). Bezpochyby mám k Arminovi největší respekt za jeho úžasnou práci na Jinji. Twig je spíše Jinja než Django, jak je popsáno v implementaci.

Když jsem se podíval na kód, okamžitě jsem věděl, že to je to, co hledám. Hlavní rozdíl oproti Calypso je v tom, že Twig kompiluje šablony do běžného PHP kódu. Začal jsem používat tuto knihovnu a na konci tohoto týdne jsem požádal Armina, zda by nechtěl dát svému projektu nový život. Jeho odpověď byla nadšená a já začal studovat kód. Moje verze je velmi odlišná od Arminovy, ale "lexer" a "parser" jsou zachovány téměř ve své původní podobě.

Strávil jsem jen pár dní prací na kódu, ale už teď jsem na výsledek hrdý a myslím, že je čas knihovnu veřejně ukázat. Včera jsem napsal dokumentaci a vytvořil jednoduchý web. Zbývá ještě hodně práce: dokončit dokumentaci, přidat testy a PHPDoc; ale kód je již kompletní a funkční:

I když je Twig nejfunkčnější šablonovací engine, je také nejrychlejší.

Překlad článku z osobního blogu

Syntaxe

Příklad

Níže uvedený příklad ukazuje některé z hlavních funkcí Twig.

{% extends "base.html" %} {% block navigation %} < ul id = "navigation" > {% for item in navigation %} < li > < a href = " {{ item.href }} " > { % if item.level == 2 %}    {% endif %} {{ item.caption | horní }} </ a > </ li > {% endfor %} </ ul > {% endblock navigation %}

Viz také

Poznámky

  1. Vydání 3.4.3 – 2022.

Odkazy