2. Wer bin ich?
• Leiter IT bei ROTEX Heating Systems
Timo
• Autor für Fachzeitschriften
• Buchautor zum Thema Symfony (1.1)
• Trainer für Symfony, Advanced PHP,
Backbone.JS
• @thaberkern
• timo.haberkern@shift-up.de
3.
4. Zum Workshop
• Wir sind per Du
• Fragen! Jederzeit!
• Slides:
http://de.slideshare.net/thaberkern/php-summit-twig
• Unterlagen:
http://tiny.cc/summit_twig
• Fertiges Projekt (ab Mittwoch Abend):
https://github.com/thaberkern/phpsummit-2013-twig
5. Was ist Twig?
• Eine Template-Engine für PHP
• Nutzt die Syntax von Jinja (Python)
• Fokus auf:
– Flexibilität
– Performance
– Sicherheit
– Erweiterbarkeit
• Default Engine von Symfony2
6. Aber PHP ist doch auch eine
Templating-Sprache!
?
7. //
In
Plain
PHP
<?php
echo
$var;
?>
<?php
echo
htmlspecialchars($var,
ENT_QUOTES,
'UTF-‐8’);
?>
<?php
echo
e($var);
?>
//
In
Twig
-‐
autoescaping
aktiv
{{
var
}}
8. //
In
Plain
PHP
<?php
if
($items):
?>
<?php
foreach
($items
as
$item):
?>
*
<?php
echo
$item
?>
<?php
endforeach;
?>
<?php
else:
?>
No
item
has
been
found.
<?php
endif;
?>
//
In
Twig
{%
for
item
in
items
%}
*
{{
item
}}
{%
else
%}
No
item
has
been
found.
{%
endfor
%}