Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Uvod u TWIG - PHP template engine
Search
DaFED
August 16, 2013
Programming
0
85
Uvod u TWIG - PHP template engine
DaFED #13
Speaker: Dejan Dexter Duduković, Eton Digital
DaFED
August 16, 2013
Tweet
Share
More Decks by DaFED
See All by DaFED
A Storybook with Angular
dafed
0
130
Search & Destroy
dafed
0
67
Why Fast Matters
dafed
1
190
Leadership through Change
dafed
0
180
Upotreba VR tehnologija u real estate-u
dafed
0
170
Virtuelna Realnost uzvraća udarac
dafed
0
110
PHP i MongoDB iz prve ruke
dafed
0
160
PHP Middleware i njegova upotreba
dafed
0
130
Asinhrone budućnosti i verteksi
dafed
0
230
Other Decks in Programming
See All in Programming
Ruby製社内ツールのGo移行
bgpat
2
330
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
5
2k
Designing for tomorrow's programming workflows
honnibal
PRO
2
110
try! Swift Tokyo 2024のLT枠に採択されたプロポーザルを出すときに考えていたこと
ski
0
330
スクラムチームと認知負荷 - ニフティのスクラムトーク Vol2. / NIFTY Tech Talk #18
niftycorp
PRO
1
120
Semantic search with Django and pgvector
pauloxnet
0
220
CQRS/ES avec Symfony, c’est (trop) bien !
jeremyfreeagent
1
620
エンターテイメント業界で利用されるAWS
demuyan
0
200
Blue/Greenデプロイの導入による 運用フローの改善
kudoas
1
340
オブジェクトしこう
okuramasafumi
2
150
Code Reviews
bkuhlmann
4
860
品質とスピードを両立: TypeScriptの柔軟な型システムをバックエンドで活用する
kosui
8
2.2k
Featured
See All Featured
Scaling GitHub
holman
457
140k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
103
6.6k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
29
6k
It's Worth the Effort
3n
180
27k
Faster Mobile Websites
deanohume
296
30k
Producing Creativity
orderedlist
PRO
336
39k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
114
18k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.4k
Gamification - CAS2011
davidbonilla
76
4.6k
[RailsConf 2023] Rails as a piece of cake
palkan
21
3.9k
Transcript
PHP template engine Dejan Dexter Dudukovic Front-End developer EtonDigital
Tvorac twiga: Fabien Potencier ( Symfony ) Twig
je moderan templejt sistem za PHP Twig je – Fast , Flexible , Secure Sve sto vam treba je dokumentacija.
Symfony Drupal 8 ( in core )
CodeIgniter ( Spark , extension ) Zend ( extension ) Laravel Twig ( bundles ) Magento 2 WordPress ( plugin ) ……
Lako !!!! - Composer (recommended ) - Git –
( development version ) - PEAR package
Ucitavanje biblioteke: require_once 'vendor/twig/twig/lib/Twig/Autoloader.php'; Registrovanje loadera: Twig_Autoloader::register(); Kreiranje loader objekta
– ( folder za template fajlove ) $loader = new Twig_Loader_Filesystem('templates/'); Krairanje twig objekta i setovanje konfiguracije $twig = new Twig_Environment($loader , array( 'cache' => 'cache', // opcija za kesiranje stranica 'debug' => true // debug mode u development fazi ));
- Nadogradnja Twig funkcionalnosti kroz eksenzije $twig->addExtension( new Twig_Extension_Debug() );
- Dodavanje ( PHP funkcija u twig ) $twig->addFunction( new Twig_SimpleFunction('krumo', ‘tKrumo') );
Postoje 2 nacina za ucitavanje template fajlova. 1. Ucitavanje template
fajla sa prosledjenim varijablama ( promenjive ) I smestanje HTML,Twig koda u varijablu. $data['content'] = $twig->render('users.twig' , $user ); 2. Ucitavanje temlate fajla i prikazivanje na stranici ( zavrsni korak ) $twig->display( 'template.twig' , $data );
Variable: PHP: <?php echo $var ?> <?php echo htmlspecialchars($var, ENT_QUOTES,
'UTF-8') ?> Twig: {{ variable }} {{ variable|escape }} Funkcije i logike: {% funkcija() %} {% for user in users %} * {{ user.name }} {% else %} No user have been found. {% endfor %}
Tags ( macro , autoescape , extends , set
, include , filter ) Filters Functions ( date , dump , random ) Operators Test ( empty , even , null )
None