libro symfony2 apendice twig

56
Este capítulo forma parte del libro Desarrollo web ágil con Symfony2 publicado por Javier Eguiluz Entra en www.symfony.es para obtener toda la información sobre el libro

Upload: luis-gonzalo-hernandez-giraldi

Post on 13-Aug-2015

122 views

Category:

Documents


0 download

DESCRIPTION

Libro

TRANSCRIPT

Page 1: Libro Symfony2 Apendice Twig

Este capítulo forma parte del libro Desarrollo web ágil con Symfony2

publicado por Javier Eguiluz

Entra en www.symfony.es para obtener toda la información sobre el libro

Page 2: Libro Symfony2 Apendice Twig

!"#$%&'()!

(*)+,-,.)/0)1*23-4**256748

!"#$ %& '( )*+*, - .%($'/0% 1% 2./(+#../& 2/,/ 343 )'- ,52#1* - %6#7#%(+%8 9-)6*(-: ,%7*)#%(1/'+#.#;/, !"#$ 2/,/ 7,%/, +*1/& ./& 2./(+#../& 1% ./ /2.#7/7#<(8 =* *>&+/(+%? &# .* 2,%6#%,%& 2'%1%& &%@$'#,A%&7,#>#%(1*A./&A2./(+#../&A7*(A7<1#$*A343A(*,)/.A-A7*,,#%(+%?A7*)*A%(A&-)6*(-AB8

C/ &#(+/D#& 1% !"#$ &% E/ 1#&%F/1* 2/,/ G'% ./& 2./(+#../& &%/( 7*(7#&/& - )'- 657#.%& 1% .%%, -1% %&7,#>#,8 H>&%,I/ 2*, %0%)2.* %. &#$'#%(+% 7<1#$* 1% '(/ 2./(+#../ !"#$ J/'(G'% ('(7/ E/-/&'+#.#;/1*A!"#$?A%&A)'-A2*&#>.%AG'%A%(+#%(1/&A2%,6%7+/)%(+%A&'A6'(7#*(/)#%(+*KL

!" #$ %&%'(#)*#& +,$#-,+ ".

/)0' !! %&%'(#)1-)23(, ..

4)5*,& !! 6-)76 8 +'9,:6+;2;<6= ..

!" ,-+#$ ".

H>&%,I/A/E*,/A%.A7<1#$*A343A%G'#I/.%(+%A/.A7<1#$*A!"#$A/(+%,#*,L

>?@4@ #$ :#&&,9:A%&%'(#)==B ?C

/)0' >?@4@ ,D4) 4920&@,D#'0D4'(&:A%&%'(#)ECF,9G)23(,:=H*IGJKLMNJIOH

6MJPEQ6= ?C

4)5*,& >?@4@ A4)5 R -,7 ST'9,J#2,:=U ,D4) A4)5EC$)(2'9:6+;2;<6=U ?C

>?@4@ ,-+#$U ?C

MN(+#%(1%& /E*,/ 2*, G'O ./ )/-*,P/ 1% 2,*$,/)/1*,%& G'% 7*(*7%( !"#$ -/ (* I'%.I%( / '+#.#;/,343 2/,/ 7,%/, &'& 2./(+#../&Q R1%)5& 1% &%, )'7E* )5& !"#$"%& - 7*(7#&/&? ./& 2./(+#../& 1% !"#$&*( &%$',/& 2*, 1%6%7+*? 2*, .* G'% (* 1%>%& /2.#7/, %. )%7/(#&)* 1% %&7/2% /. I/.*, 1% ./& I/@,#/>.%& J6'(7#<( 4920&@,D#'0D4'(&:=K8 R1%)5&? /. %0%7'+/, ./ /2.#7/7#<(? ./& 2./(+#../& 1% !"#$ &%'(#$"!%) / 7<1#$* 343 (/+#I*? 2*, .* G'% %. ,%(1#)#%(+* - %. 7*(&')* 1% )%)*,#/ %& &#)#./, /. 1%./&A2./(+#../&A3438

C/ )%0*, ,%6%,%(7#/ 2/,/ /2,%(1%, !"#$ %& &' 1*7')%(+/7#<( *6#7#/.? G'% 2'%1%& %(7*(+,/, %(E++2LSS+"#$8&%(&#*./>&8*,$S1*7')%(+/+#*(8 C*& 7*(+%(#1*& 1% %&+% /2O(1#7% ,%&')%( ./& 2/,+%&%&%(7#/.%&A1%A%&/A1*7')%(+/7#<(8

9:;<)=0.54>3)/0)6748);-4*4?,@9# '+#.#;/& !"#$ 7*)* 2,*-%7+* #(1%2%(1#%(+%? 2'%1%& %.%$#, .#>,%)%(+% ./ I%,&#<( G'% )%0*, &%/1/2+% / +'& (%7%&#1/1%&8 !"#$ +#%(% '( ./,$* E#&+*,#/. 1% /7+'/.#;/7#*(%& %D#+*&/&? 2*, .* G'% ,%@&'.+/A&%$',*A'+#.#;/,A./AI%,&#<(A)5&A,%7#%(+%A1#&2*(#>.%A-A/7+'/.#;/,A7*(A6,%7'%(7#/8

!"#

Page 3: Libro Symfony2 Apendice Twig

!"# $% &"'(#)#*"+ ,* -(*%*.), /0*1 2$'(#" 2$ -') )3%*&)&*4' 5678"'69+ %) :$#,*4' 2$ /0*1 :*$'$ *7;3-$,()<3"#<$%<3#"3*"<5678"'69+<)%<7$'",<*'*&*)%7$'($=

>), :$#,*"'$, 5678"'6 9=?=@ 6 )'($#*"#$, -(*%*.)' /0*1 A=A=B+ 3"# %" C-$ '" 8-'&*"') '*'1-') 2$%),<1#)'2$,<'":$2)2$,<*'(#"2-&*2),<3"#</0*1<A=9<C-$<,$<$B3%*&)'<$'<%),<3#4B*7),<,$&&*"'$,=

>) :$#,*4' 9=?=D $, %) 3#*7$#) :$#,*4' 2$ 5678"'69 $' %) C-$ $,(E 2*,3"'*F%$ /0*1 A=G=B= !"# ()'("+,* -(*%*.), 5678"'6 9=?=D " 3",($#*"# 3-$2$, H)&$# -," 2$ ("2", %", $I$73%", 2$ &42*1" *'&%-*2",$'<$,($<)3J'2*&$=

KL-J H)&$# ,* ($ :$, "F%*1)2" ) -(*%*.)# 5678"'6 9=?=@ " *'8$#*"# 6 '$&$,*(), )%1-') 8-'&*"')%*2)22$ /0*1 A=9M >) ,"%-&*4' &"',*,($ $' )&(-)%*.)# 7)'-)%7$'($ %) :$#,*4' 2$ /0*1= !)#) $%%"+ )F#$$% )#&H*:" !"#$ C-$ ,$ $'&-$'(#) $' $% 2*#$&("#*" #)N. 2$% 3#"6$&(" 6 &)7F*) %) &"'8*1-#)&*4' 2$/0*1<3"#<%)<C-$<*'&%-6$<5678"'6<9=?=DO

%%&'()*+,-&!"#$&!"&./01-2/ 34546

789+:;

:+8<*88#=%%:+8*>?4)-0%1@?#-8%A9+:4:+8

,"($+-2<,B4B43

%%&'()*+,-&!"#$&!"&./01-2/ 3454C

789+:;

:+8<*88#=%%:+8*>?4)-0%1@?#-8%A9+:4:+8

,"($+-2<,B4D45

P&(-)%*.)<()7F*J'<%)<&"'8*1-#)&*4'<2$</0*1<$'<$%<)#&H*:" !"#$4E-)FO

%%&'()*+,-&!"#$4E-)F&!"&./01-2/ 34546

89+:&GH6DGI")!5III6@!?5@J?!5I?BD6DB)?D1J@J@@I

%%&'()*+,-&!"#$4E-)F&!"&./01-2/ 3454C

89+:&5?C!6!1@5)15!1?6@G)ICDI?6DGD"?!6"@G3"H5"

!"#<Q%(*7"+<)&(-)%*.)<%",<&"'($'*2",<2$<%",<'-$:", !"#$%&' $I$&-()'2"<$%<,*1-*$'($<&"7)'2"O

K&#*#&?+2%,"2!-($&+2$8@EE

R,() ,"%-&*4' ,$ H) 3#"F)2" &"' JB*(" $' %), :$#,*"'$, 2$ 5678"'69 *'8$#*"#$, ) 9=?=D= S" "F,;()'($+ 3"2#N) 2$I)# 2$ 8-'&*"')# $' %), 8-(-#), :$#,*"'$, 2$F*2" ) C-$ 5678"'69 ()7F*J' *'&%-6$&42*1"<3)#)<*'($1#)#</0*1<6<3"2#N)'<3#"2-&*#,$<*'&"73)(*F*%*2)2$,=

!"#$%&"'()*'"+%>), 3%)'(*%%), 2$ %), )3%*&)&*"'$, 0$F ,-$%$' -(*%*.)# -' %$'1-)I$ 3)#) &#$)# %", &"'($'*2", TU/V>+WV>+<X):)5&#*3(Y<6<"(#"<%$'1-)I$<3)#)<)Z)2*#<%)<%41*&)<2$'(#"<2$<%),<3%)'(*%%),<T/0*1+<!U!Y=

!)#) ,$3)#)# -'" 2$ "(#"+ %", %$'1-)I$, 2$ 3#"1#)7)&*4' 2$8*'$' $(*C-$(), $,3$&*)%$,= !U! 3"#$I$73%" 2$8*'$ %), $(*C-$(), LM#*# 6 MN 3)#) 2$%*7*()# ,- &42*1" 2$'(#" 2$ -') 3%)'(*%%)= [1-)%7$';($+</0*1<2$8*'$<(#$,<$(*C-$(),<$,3$&*)%$,<3)#)<2*,(*'1-*#<$%<&42*1"</0*1<2$%<#$,("<2$<&"'($'*2",O

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!""

Page 4: Libro Symfony2 Apendice Twig

! !! " "" #$%$&'()*%$%&+,&-$,(%&.+&/0$&-$%1$2,+3

! !# " #" #$%$&$4$.1%&,5617$&+0&,$&#,$0*1,,$3

! !$ " $" #$%$&107,/1%&/0&7('+0*$%1(3

8 .19+%+071$ .+ (*%() '(*(%+) .+ #,$0*1,,$) 7('( :'$%*" " .+ (*%() 9%$'+;(%<) ;+2 7('( =/2">0&=$1,)?&*(.$)&,$)&+*1@/+*$)&.+&A;16&)(0&)1'B*%17$)?&$.+'C)&.+&)+%&,16+%$'+0*+&'C)&7(071)$)D

!""#$% &'#( )*+%(, -./012%1-+#34 56+780

E07,/1%&/0&7('+0*$%1( !$%&&&%$" !$%&&&%$" '#$%&&&%#( !)%&&&%)"

F()*%$%&/0$&-$%1$2,+ !!%&&&%"" !!%&&&%"" '#*%&&&%#( !+%&&&%"

84$.1%&,5617$ !#%&&&%#" !#%&&&%#" '#%&&&%#( !%&&&%"

!"#$%&'('%)'*+,-'./(,0A;16 +) *$0 )+071,,( @/+ G$)*$ ,() '$@/+*$.(%+) " .1)+4$.(%+) )10 9(%'$7150 )(2%+ #%(6%$'$7150#/+.+0 +0*+0.+% +, 9/071(0$'1+0*( .+ ,$) #,$0*1,,$)3 H+ G+7G(? +, (2I+*1-( J,*1'( .+ A;16 +) 7(0K)+6/1% @/+ ,() '$@/+*$.(%+) " .1)+4$.(%+) )+$0 7$#$7+) .+ 7%+$% *(.$) ,$) #,$0*1,,$) .+ ,$ $#,17$K7150 .+ 9(%'$ $/*50('$? )10 $"/.$ .+ ,() #%(6%$'$.(%+)3 H+ +)*$ 9(%'$ )+ $7+,+%$ +, .+)$%%(,,(.+&,$)&$#,17$71(0+)&"&)+&'+I(%$&,$&#%(./7*1-1.$.3

L(% +)( A;16 G$ )1.( 1.+$.( #$%$ @/+ )+$ %+$,'+0*+ 9C71, .+ $#%+0.+%? ,++% " +)7%121% #(% #$%*+ .+#%(9+)1(0$,+) )10 /0 #+%91, *B7017( $-$0M$.(3 N)*$ #%1'+%$ )+77150 +O#,17$ *(.() ,() 7(0(71'1+0*()2C)17() 1'#%+)710.12,+) #$%$ ,() '$@/+*$.(%+)3 P$ )16/1+0*+ )+77150? 1.+$.$ #$%$ #%(6%$'$.(%+)?+O#,17$&,$)&7$%$7*+%Q)*17$)&'C)&$-$0M$.$)&.+&A;163

1/0-('(%#23/()'4#52P$) #C610$) RAFP @/+ )+ +0-Q$0 $ ,() /)/$%1() 0(%'$,'+0*+ )+ 6+0+%$0 .+ 9(%'$ .10C'17$ $#$%*1% .+ #,$0*1,,$)3 L$%$ %+,,+0$% .+ 7(0*+01.( ,$) #C610$)? ,$) #,$0*1,,$) (2*1+0+0 ,$ 109(%'$7150 $*%$-B)&.+&,$)&-$%1$2,+)3

L$%$ '()*%$% +, 7(0*+01.( .+ /0$ -$%1$2,+ +0 ,$ #,$0*1,,$? +)7%12+ )/ 0('2%+ +07+%%$.( +0*%+ .()#$%+) .+ ,,$-+)D !! ,-./01231245265075/41 ""3 N, )16/1+0*+ 75.16( 10.17$ 75'( '()*%$% +, -$,(%.+&*%+)&-$%1$2,+)D

'8(9-45 !! ,-./01 ""&%:71,1; !! 1353 ""%5<-;

=%6761;%1, !! >7?353 ""'@8(

:1 +%+) /0 '$@/+*$.(%? ,( 0(%'$, +) @/+ #%+6/0*+) +, 0('2%+ .+ ,$) -$%1$2,+) $ ,() #%(6%$'$.(%+)?@/+ )(0 ,() @/+ ,$) 7%+$03 S( (2)*$0*+? 6%$71$) $ ,+06/$I+) 7('( A;16? +)*C )/%61+0.( +, !"#$%%&''&($#$!& ") !*#"+& ( HHH T,!"#*-).!%*/") !"/"'&01")2,U +0 +, @/+ #%1'+%( )+ 7%+$0 ,$) #,$0*1,,$) " .+)K#/B)&)+&#%(6%$'$&+,&%+)*(&.+&,$&$#,17$7150?&/*1,1M$0.(&,$)&-$%1$2,+)&.+9101.$)&+0&,$)&#,$0*1,,$)3

V0$ '1)'$ -$%1$2,+ #/+.+ 7(0*+0+% '/7G$) #%(#1+.$.+) .19+%+0*+)3 N0 +)+ 7$)(? #/+.+) '()*%$%7$.$ #%(#1+.$. 7(0 ,$ 0(*$7150D !! 65075/41&80-871353 ""3 E'$610$ @/+ +0 +, +I+'#,( $0*+%1(%*(.() ,() .$*() .+, /)/$%1( )+ 6/$%.$0 +0 /0$ -$%1$2,+ ,,$'$.$ ?;?507-3 L$%$ '()*%$% ,$ 109(%'$K7150?&.+2+%Q$)&'(.1917$%&+,&75.16(&#(%&,(&)16/1+0*+D

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

9:;

Page 5: Libro Symfony2 Apendice Twig

!"#$%&' (( )*)'+,%-.%/0+1 22-34,1.1* (( )*)'+,%-15'5 223'6%*

738,81*31. (( )*)'+,%-9,)5'5 22!:"#

!"#$#%&' ()& ( *"'& +*',& -. ,*/"'&' #)+*',&0#1) ./ #)-#+.'.)". 2&'& 34#56 2.'* $& /.5()-& /(.$.2'*-(0#' 2$&)"#$$&/ ,7/ $.5#8$./9 :) 0(&$;(#.' 0&/*6 $*/ 2'*5'&,&-*'./ 0*) $*/ ;(. "'&8&<./ ". #)=+*',&'7)>/*8'.>$&>+*',&>-.>*8".).'>$&>#)+*',&0#1)>-.>$&>&2$#0&0#1)9

!"#$%$&'()$*%"(+'&$,*?*-#+#0&' $& #)+*',&0#1) &)"./ -. ,*/"'&'$& ./ ,(@ 0*,A) .) $&/ 2$&)"#$$&/ -. $&/ &2$#0&0#*)./9B,&5#)& ;(. ;(#.'./ ,*/"'&' $& -./0'#20#1) -. () 2'*-(0"* .) .$ /#"#* 4.8 -. ()& "#.)-& -. 0*,.'=0#*>.$.0"'1)#0*9>C*>,7/>+70#$>/.'D&>./0'#8#'>/#,2$.,.)". ((3"+%5)9;%-51*9+,"9,%.3229

E#) .,8&'5*6 /# $& -./0'#20#1) 0*)"#.). ."#;(."&/ F3?C6 2*-'D& #)".'+.'#' 0*) .$ 2'*2#* -#/.G* -.$& 275#)&9 H/D ;(. 2&'& .I#"&' ./"*/ 2'*8$.,&/6 $* ,.<*' ./ .$#,#)&' "*-&/ $&/ ."#;(."&/ F3?C ;(.2(.-& 0*)".).' $& -./0'#20#1)9 :) 34#5 $& #)+*',&0#1) /. ,*-#+#0& ,.-#&)". +#$"'*/6 ("#$#%&)-* $&/#5(#.)".>/#)"&J#/K

(( "+%5)9;%-51*9+,"9,%. < *;+,";'=* 22

C& 2&$&8'& *;+,";'=* ./ .$ )*,8'. -.$ +#$"'* ;(. /. &2$#0& &$ 0*)".)#-* -. $& I&'#&8$. &)"./ -. ,*/="'&'$&9 :$ +#$"'* *;+,";'=* .$#,#)& 0(&$;(#.' ."#;(."& F3?C ;(. 0*)".)5& $& I&'#&8$. @ ./ ()* -.$*/>,(0L*/>+#$"'*/>;(.>@&>#)0$(@.>34#56>"&$>@>0*,*>/.>.J2$#0&'7>,7/>&-.$&)".9

C*/ +#$"'*/ /#.,2'. /. ./0'#8.) -."'7/ -.$ )*,8'. -. $& I&'#&8$. @ /.2&'&-*/ 2*' .$ 0&'70".' <6 ;(. ./$& 8&''& I.'"#0&$ ;(. /. *8"#.). &$ 2($/&' $& ".0$& >&;- <()"* 0*) $& ".0$& -.$ )A,.'* ?9 M* ./ ).0.=/&'#* -.<&' () ./2&0#* .) 8$&)0* .)"'. $& I&'#&8$.6 $& 8&''& < @ .$ +#$"'*6 2.'* /# $* L&0./6 $& 2$&)"#$$&/.&>,7/>+70#$>-.>$..'9

:$ /#5(#.)". .<.,2$* ("#$#%& .$ +#$"'* )""1+ N-.$ #)5$O/6 !""#$%&'#P 2&'& ,*/"'&' .$ 0*)".)#-* -. ()&I&'#&8$.>.)>$."'&/>,&@A/0($&/K

(( '+;,9)&%-;,;)&'+ < )""1+ 22

3*-*/ $*/ +#$"'*/ -. E@,+*)@Q /. 2(.-.) .)0&-.)&' 2&'& &2$#0&'$*/ .) 0&/0&-&9 :$ /#5(#.)". .<.,=2$* .$#,#)& "*-&/ $&/ 2*/#8$./ ."#;(."&/ F3?C -.$ "#"($&' -. () &'"D0($* @ -./2(O/ 0*)I#.'". /(0*)".)#-*>&>,&@A/0($&/K

(( '+;,9)&%-;,;)&'+ < *;+,";'=* < )""1+ 22

:$ *'-.) .) .$ ;(. ./0'#8./ $*/ +#$"'*/ ./ ,(@ #,2*'"&)".6 @& ;(. 34#5 $*/ &2$#0& /#.,2'. *'-.)&=-&,.)".>.,2.%&)-*>-./-.>$&>#%;(#.'-&9

H$5()*/ +#$"'*/ 2.',#".) ,*-#+#0&' /( 0*,2*'"&,#.)"* 2&/7)-*$./ #)+*',&0#1) &-#0#*)&$ .)"'. 2&='O)"./#/9>:$>+#$"'* @%,. /.>.,2$.&>2&'&>()#'>$*/>.$.,.)"*/>-.>()&>$#/"&K

(( "+%5)9;%-1;,A)1;'* < @%,. 22

E#) .,8&'5*6 2*' -.+.0"* @%,. (). "*-*/ $*/ .$.,.)"*/ /#) -.<&' )#)5A) ./2&0#* .) 8$&)0* .)"'..$$*/9>R&'&>&G&-#'>./.>./2&0#*>.)>8$&)0*6>#)-D0&$*>.)"'.>2&'O)"./#/>&$>&G&-#'>.$>+#$"'*K

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 6: Libro Symfony2 Apendice Twig

!! "#$%&'($)*(+,&*(-. / 0$+123435 66

!"#$%&'()*+,-".(/0%1%2",(3/"14/%5,(*0,*(3",6305,(*(0570*()","(/'%,(1*.(515#5'0*.8

!! "#$%&'($)*(+,&*(-. / 0$+1237435 66

!! "#$%&'($)*(+,&*(-. / 0$+12348435 66

!! "#$%&'($)*(+,&*(-. / 0$+12349435 66

95 0*+*. 1*. :%10,*. 4/5 %'31/;5 !<%=> " 3*'0%'/"3%?' .5 57)1%3"' 1*. #6. @0%15. )"," 1*. #"4/50"A+*,5.8

%-(*> #/5.0," /'" :53B" 3*' 51 :*,#"0* %'+%3"+*C D". E",%"$15. /0%1%2"+". )"," %'+%3", 51 :*,#"0*.*'(1".(#%.#".(4/5(1".(+5(1"(:/'3%?' %-(*25 +5(FGFC

!:4;+4<$=4>&*.*4?@4%*40&A+$4%*4?B@?74C$.(#-#D-43?@EFE?B@?34:6!! 3($%-=3 / %-(*23%ECEG35 66

!:4;+4-%*CH.4>&*.*14A-.4@IJKBJ??74C$.(#-#D-43?@EFE?B@?4@IJKBJ??34:6!! 31$L3 / %-(*23%ECEG4MJ+J.35 66

!:4N-CO+P14.*4"&*%*4-"A+'-#4.$O#*4Q-#+-OA*.4:6!:4;+41$4.*4+1%+'-4*A4>$#C-($74.*4C&*.(#-4'$C$43R&A=4?@74?B@?4@IJKB34:6!! $>*#(-)>*'<-ST"+#-'+$1 / %-(* 66

.(#+"(-U.> 51%#%'" 0*+". 1". 50%4/50". G!HD ; IHD +51 3*'05'%+* +5 1" E",%"$15C !"#$%&' ,5A5#)1"2"(+*.(*(#6.(5.)"3%*.(5'($1"'3*()*,(/'*(.*1*C

!! 3V.(#$1U9W$#*C4+".&CVE.(#$1U94%$A$#4.+(4-C*(3 / .(#+"(-U. 66

!:4X&*.(#-43W$#*C4+".&C4%$A$#4.+(4-C*(34:6

%*>-&A(>()5,#%05(".%='",(/'(E"1*,("(1".(E",%"$15.(4/5('*(57%.05'(*(5.06'(E"3-".C

!! %*.'#+"'+$14/ %*>-&A(23S.(*4"#$%&'($4($%-QD-41$4(+*1*4&1-4%*.'#+"'+Y135 66

J% 1" +5.3,%)3%?' 57%.05 ; '* 5.06 E"3-"> .5 #/5.0," ./ 3*'05'%+*C J% '*> .5 #/5.0," 51 #5'."K5 !"#$%&'()*+$(,$()-./-,0(,$1%0%,*0-,)%#+'1&+120!

&""*#>(0,"'.:*,#"(51(3*'05'%+*(+5(1"(E",%"$15("(#";@.3/1".C

!:4X&*.(#-43XSZ[34:6!! 3X*1\3 / &""*# 66

!:4X&*.(#-43]Z^_`Xab]cZ4dS4b_ZNabN_34:6!! 3]1>$#C-'+Y14%*4b$1(-'($3 / &""*# 66

A$L*#>(0,"'.:*,#"(51(3*'05'%+*(+5(1"(E",%"$15("(#%'@.3/1".C

!:4X&*.(#-43C*1\34:6!! 3X*1\3 / A$L*# 66

'-"+(-A+e*>(0,"'.:*,#"(1"(),%#5,"(150,"(+51(0570*("(#";@.3/1".(;(51(,5.0*(+5(150,".("(#%'@.3/1".C

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 7: Libro Symfony2 Apendice Twig

!"#$%&'()*#+$&,-+#.,/#0/#1/23435*6#"7!! +$&,-+ 8 5*93(*03:& 77

!"#$%&'()*#+;/'#9)&53/'#,/#3,50%<&,#3=*+#"7!! +;/'#9)&53/'#>?#3,50%<&,#@AB+ 8 5*93(*03:& 77

(3(0&!"#$%&'()$*%"+%",$-*.$%"+.#$%"/."0%/%",%+%1$%"%"*%23'04+%'"2".+"$.'#)"/."+.#$%'"%"*-&3'04+%'5

!"#$%&'()*#+@,4/)1*53C,#D&#E/,(*5(/+#"7!! +3,4/)1*53C,#2&#5/,(*5(/+ 8 (3(0& 77

!"#$%&'()*#+;/'#F)&53/'#>/#@,50%<&,#@=*+#"7!! +;/'#9)&53/'#>?#3,50%<&,#@AB+ 8 (3(0& 77

G/3,! 0$.% 4&% 0%/.&% /. #.6#) 0)&0%#.&%&/) #)/)' +)' 7%+)$.' /. +% 0)+.00-8& /. .+.*.&#)' ')1$.+%"94."'."%,+-0%".+"(-+#$)5

!"#;*#=*)3*H0&#1&'&'#5/,(3&,&#0/'#=*0/)&'#I+J,&)/+K#+L&H)&)/+K#+$*):/+M#"7!! 1&'&'#8 G/3, 77

:+ (-+#$) G/3, %,+-0%/) ')1$. +% 7%$-%1+. 1&'&' ;%0. 94. '. *4.'#$. 0)*) $.'4+#%/) +% 0%/.&% /.#.6#) J,&)/L&H)&)/$*):/ #)/) <4&#)5 =)*) 0%'- '-.*,$. .' &.0.'%$-) '.,%$%$ +)' .+.*.&#)' 94.'. 4&.&! .+ (-+#$) G/3, ,.$*-#. -&/-0%$ .&#$. ,%$>&#.'-' .+ 0%$?0#.$ ) 0%$%0#.$.' 94. '. 4#-+-@%& ,%$%4&-$"+)'".+.*.&#)'A

!"#$%&'()*#+J,&)/#L&H)&)/#$*):/+#"7!! 1&'&'#8 G/3,.+#+6 77

!"#$%&'()*#+J,&)/K#L&H)&)/K#$*):/+#"7!! 1&'&'#8 G/3,.+K#+6 77

!"#$%&'()*#+J,&)/#N#L&H)&)/#N#$*):/+#"7!! 1&'&'#8 G/3,.+#N#+6 77

B% '.00-8& !"#$ %&'& %'($'&)&*('+, C,?D-&% EFEG *4.'#$% )#$)' (-+#$)' *?' %7%&@%/)' 94. #%*1->&-&0+42."HI-D5

!"#$%&'()*+"*"'#$,"J- -&#.&#%' *)'#$%$ .& 4&% ,+%&#-++% .+ 0)&#.&-/) /. 4&% 7%$-%1+. 94. -&0+42. .#-94.#%' KHLB!,4./. 94. .+ $.'4+#%/) )1#.&-/) &) '.% +) 94. .',.$%1%'5 M*%D-&% 94. 4& ,$)/40#) /-',)&. /. +%'-D4-.&#."/.'0$-,0-8&A

O'()/,PQ;/)&1#39'%1OR'()/,PQ 2/0/)#'3(& O&1Q*1&(OR&1QS

J- %;)$% -&0+42.' .& 4&% ,+%&#-++% .+ 08/-D) !! 9)/2%5(/S2&'5)3953/, 77 ,%$% *)'#$%$ ,)$ ,%&N#%++%"+%"/.'0$-,0-8&!"HI-D"*)'#$%$?"+)"'-D4-.&#.A

T0(U'()/,PTP(U;/)&1#39'%1T0(UR'()/,PTP(U 2/0/)#'3(& T0(U&1TP(U*1&(T0(UR&1TP(US

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 8: Libro Symfony2 Apendice Twig

!"#" $%&'"# ()$ $* +,-'$-&., /"* 0,#/"., .$ )-" %"#&"1*$ 2)$." !"#$%! *" 234&-" 5 2"#" $%&'"# 2,6'$-+&"*$7 2#,1*$/"7 .$ 7$4)#&.".8 9:&4 2,# .$0$+', -, 2$#/&'$ /,7'#"# $'&()$'"7 ;9<= 5 2,# $7,/,.&0&+">$*>+,-'$-&.,>.$>',."7>*"7>%"#&"1*$7>"2*&+"-.,>*,>()$>7$>.$-,/&-">$* #%&'()*#"+,%+%*&'$%?

@)-()$ 2)$.$ #$7)*'"#'$ $A'#"B, , &-+*)7, -$4"'&%,8 $7'$ +,/2,#'"/&$-', 2,# .$0$+', .$ 9:&4 $77$4)#"/$-'$ $* /37 +,##$+', 5 '$ $%&'"#3 /)+C,7 2#,1*$/"7 $- ')7 2*"-'&**"7? !"#" -, "2*&+"# $*/$+"-&7/,>.$>$7+"2$>$->)-">.$'$#/&-".">%"#&"1*$8>)'&*&D">$*>0&*'#, !"#E

$$ %!&'()*&+',-)!.%).&/ 0 !"# 11

F* 0&*'#, !"# ,#.$-" " 9:&4 ()$ /)$7'#$ $* +,-'$-&., ,#&4&-"* .$ *" %"#&"1*$8 +,-'$-4" *, ()$ +,-6'$-4"8 7&- #$"*&D"# -&-4)-" /,.&0&+"+&G-? !,# '"-',8 $* #$7)*'"., .$* +G.&4, "-'$#&,# 7$#3 ()$ *"2*"-'&**" /)$7'#" $* +,-'$-&., 2-*!&/345&!,6 .%-(627-*!&/34 '&8&! -.*, 2,64"6,*27,64+ ,#&64&-"*?

!"#$%&'"()*(+,$*%'H)"-., 9:&4 +#$" )-" 234&-" " 2"#'&# .$ )-" 2*"-'&**"8 #$72$'" ',.,7 *,7 $72"+&,7 $- 1*"-+, I'"61)*".,#$78 -)$%"7 *J-$"78 $72"+&,7K ()$ +,-'$-4" *" 2*"-'&**"? F7'$ +,/2,#'"/&$-', .$ 9:&4 $7 $*/37>"2#,2&".,>$->*">/"5,#J">.$>*,7>+"7,78>2$#,>7$>2)$.$>/,.&0&+"#?

L/"4&-">()$>C"7>$7+#&',>$*>7&4)&$-'$>+G.&4,>;9<=>**$-,>.$>$72"+&,7>2"#">/$M,#"#>7)>*$4&1&*&.".E

2(84

28.4

2" +++499927"4

278.4

28.4

+++

9:&4 .&72,-$ .$ )-" $'&()$'" $72$+&"* **"/"." $: -%"),8,-- :1 ()$ $*&/&-" ',.,7 *,7 $72"+&,7$->1*"-+,>.$*>+G.&4,>()$>$-+&$##"?>N&>/,.&0&+"7>$*>$M$/2*,>"-'$#&,#>2,#>*,>7&4)&$-'$E

$: -%"),8,-- :1

2(84

28.4

2";+++499927"4

278.4

28.4

+++

$: ,/'-%"),8,-- :1

@* 4$-$#"# )-" 234&-" " 2"#'&# .$ *" 2*"-'&**" "-'$#&,#8 9:&4 &-+*)5$ $* 7&4)&$-'$ +G.&4,8 7&- -&-4O-$72"+&,>$->1*"-+,E

2(8428.42" +++499927"4278.428.4+++

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 9: Libro Symfony2 Apendice Twig

!"#$%&'('%&()$('*'+)(,-

.'(#'/0,-!"#$%&% '( )&("% *' +,& )&%-&.(' ', +,& /(&,$-((& 01-2 '# $&, #',3-((" 3"4" ',3'%%&% #+ ,"4.%'',$%' *"# /&%'# *' ((&)'#5 !! "#$%&'()'(*+(,+&-+%*' ..6 7" ".#$&,$'8 ', (&# &/(-3&3-",'# 1'.%'&('#9#+'('9#'%9:&.-$+&(9+$-(-;&%9(&9,"$&3-<, !!/,+&-+%*'01&#1-')+)/..6

01-2 '# $&, =('>-.(' ?+' '#$& @($-4& ,"$&3-<, =+,3-",& $&,$" #- $+# )&%-&.('# #", ".A'$"# 3"4" #-#", &%%&B# B $&,$" #- #+# /%"/-'*&*'# #", /@.(-3&# " #- #' &33'*', 4'*-&,$' !"##"$%6 C, 3",3%'$"8 (&'>/%'#-<, !! ,+&-+%*'01&#1-')+) .. :&3' ?+' 01-2 .+#?+' '( )&("% *' (& /%"/-'*&* +$-(-;&,*"(&#9#-2+-',$'#9-,#$%+33-",'#9B9',9'(9#-2+-',$'9"%*',5

D6 2,+&-+%*'341&#1-')+)45

E6 2,+&-+%*'(61&#1-')+)

F6 2,+&-+%*'(61&#1-')+)78

G6 2,+&-+%*'(69':;&#1-')+)78

H6 2,+&-+%*'(6-<;&#1-')+)78

I6 "=**

C, /%-4'% (+2&% 01-2 .+#3& ?+' ', (& /(&,$-((& '>-#$& +, &%%&B ((&4&*" 2,+&-+%*' B ?+' 3",$',2&+,& 3(&)' ((&4&*& 1&#1-')+)6 J- ," (" ',3+',$%&8 $%&$& *' .+#3&% +, ".A'$" ((&4&*" 2,+&-+%*'

?+' *-#/",2& *' +,& /%"/-'*&* ((&4&*& 1&#1-')+)6 J- '>-#$' '( ".A'$" /'%" ," (& /%"/-'*&*8 /%+'K.& 3", ("# !"##"$% 4L# 3"4+,'# M1&#1-')+)788 9':>>>788 -<>>>78N6 O"% @($-4"8 #- ," ',3+',$%& '()&("%9*'9(&9/%"/-'*&*93",9,-,2+,"9*'9("#94P$"*"#9&,$'%-"%'#89*')+'()'9'(9)&("% "=**6

Q"4" ', (&# &/(-3&3-",'# JB4=",BE '# :&.-$+&( $%&.&A&% 3", ".A'$"# ?+' %'/%'#',$&, ',$-*&*'# *'R"3$%-,'E8 ("# ".A'$"# '#$L, ((',"# *' !"##"$% B %"##"$%6 S#T ?+' 01-2 3&#- #-'4/%' ',3+',$%& '( )&("%*'9(&#9/%"/-'*&*'#93", 2,+&-+%*'(69':;&#1-')+)786

J- (& ,"$&3-<, !! ,+&-+%*'01&#1-')+) .. ," $' 3",)',3'8 /+'*'# +$-(-;&% (& ,"$&3-<, '?+-)&(',$'!! ,+&-+%*'341&#1-')+)45 ..6 J+ =+,3-",&4-',$" '# '>&3$&4',$' '( 4-#4" '>/(-3&*" &,$'%-"%K4',$'9B9,"9".(-2&9&9?+' ,+&-+%*' #'&9+,9&%%&B9B 1&#1-')+) +,&93(&)'9#+B&6

S*'4L# *' (&# )&%-&.('# ?+' #' /&#&, & (& /(&,$-((&8 /+'*'# 3%'&% ,+')&# )&%-&.('# 3", (& '$-?+'$&<':

!? <': ,+&-+%*'/@/,+*#&/?.

U&#9)&%-&.('#9*'901-29/+'*',9#'%9*'9$-/"9,+4P%-3"8 &''(")*'89&%%&B9B93&*',&9*'9$'>$"5

U& (<2-3& ?+' +$-(-;& -,$'%,&4',$' 01-2 /&%& *'$'%4-,&% '( )&("% *' (& '>/%'#-<, !!

,+&-+%*'01&#1-')+) .. '# '( /%-,3-/&( +,"((' -" &'#"(() *' #+ %',*-4-',$"6 Q"4" ," '#/"#-.(' 4'A"%&%(" 3", 3<*-2" OVO8 ! "!#$%# &' (! )'#*%+, -./ 01-2 -,3(+B' +,& '>$',#-<,

*' OVO /%"2%&4&*& ', Q /&%& 4'A"%&% 4+B #-2,-=-3&$-)&4',$' '( %',*-4-',$" *' '#$&/&%$'6

12!3

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"!

Page 10: Libro Symfony2 Apendice Twig

!"#$%&'(%#&'#)'*)+#",!- .') (+/01'#2 34+.5#6%178%3 -,

!"#9%:+1'.#(;/51<7+.#",!- .') '&%&#2 => -,

!- .') ?1'7<+#2 @ABCDE -,

!"#9%:+1'.#0++:'%(+.#",!- .') 7+('7)%&+#2 F%:.' -,

!"#G11%H.#(+1/%:'.#",!- .') )%.%I/?;'.)+.#2 JBK DK @DL -,

!"#G11%H.#%.+7<%)<M+.#",!- .') &<1'77<+('.#2 ! 3?;0:<7%3N 3O))?NPPCCC3K 3?1<M%&%3N 3O))?NPPCCC3 , -,

!"#G11%H#%.+7<%)<M+#Q;'#7+/0<(%#)+&+.#:+.#M%:+1'.#%()'1<+1'.#",!- .') ?'1F<:#2 !

3(+/01'3N 34+.5#6%178%3K

3?'1F<:'.3N J3;.;%1<+3K 3%&/<(<.)1%&+13LK

3'&%&3N =>K

3M%:<&%&+3N )1;'

, -,

!"# $"%&'"# %& (&)(* #& &'$+&,,"' &'(,& $*-+.."# #+-/.&# * %*0.&#1 !*# '2-&,*# 3 .*# 4".*,&# !""#$%&'"( #& +'%+$"' %+,&$("-&'(&1 !*# ",,"3# '")*&$%( #& &'$+&,,"' &'(,& $*,$5&(&# 3 .*# ",,"3# "#*$+"6(+4*#7* +&(+%( &'(,&7$*-+.."#1

89+: ("-0+;' /&,-+(& $,&", & +'+$+".+<", -=# %& >'" 4",+"0.& " ." 4&<1 ?"," &..*@ &#$,+0& 4",+"# 4"6,+"0.&#7#&/","%"#7/*,7$*-"#737%&A+'&7&.7-+#-*7'2-&,*7%&74".*,&#7%&#/>;#7%&.7#B-0*.* 2C

!- .') M%1<%0:'@K#M%1<%0:'=K#M%1<%0:'E#2#M%:+1@K#M%:+1=K#M%:+1E#-,

!- .') (+/01'K#'&%&K#%7)<M%&+#2 34+.5#6%178%3K =>K )1;' -,

?","7$*'$"(&'",74",+"0.&#7&'(,&7#B7*7$*'7*(,*#74".*,&#@7>(+.+<"7&.7*/&,"%*, RC

!- .') (+/01'$+/?:')+#2#(+/01'#R 3#3 R#%?'::<&+.#-,

!- .') '*?'1<'(7<%#2#'&%&#R 3#%S+.3 -,

D+ '&$&#+("# %&A+'+, >'" 4",+"0.& ->3 $*-/.&E" $*'$"(&'"'%* ->$5*# 4".*,&# %+A&,&'(&#@ &# -=#$*'4&'+&'(&7>(+.+<",7."7&(+F>&(" .') %&7."7#+:>+&'(&7-"'&,"C

!- .') ?'1F<:#-,

!! ;.;%1<+C%?'::<&+. ,,K !! ;.;%1<+C(+/01' ,,

!! ;.;%1<+C'&%& ,,#%S+.

TUV<(%N !! ;.;%1<+C;1: ,,

!-#'(&.')#-,

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 11: Libro Symfony2 Apendice Twig

!" #$%&"'() *' ") +%,)-./+ !! "#$%#&'()*$+*%(,#, -- 0,.".1)*) #%$ 23.4 '5 60' '" +%(&$' *' ")#$%#.'*)* +% #0'*' 5'$ 7)$.)&"'8 9%$ '5%: ! "!#$%# &' (! )'#*%+, -./ &' 01%2: 5' .+-"0;' ") <0+-./+

#..$%&/.(01 #)$)=%&,'+'$='"=7)"%$=*'=#$%#.'*)*'5=-0;%=+%(&$'='5=7)$.)&"'>

!234+53,+535%6/%(7.(53(8(9*'+535+73(:/%"#'(7.(532-!! +;($.#),(5<$%*<%+7 --

!= 5(. *$+*%(,#,3> ?,(5<$%*<%+7? =-

!! #..$%&/.(0+;($.#@3*$+*%(,#,1 --

!" 5.40.'+,' '?'(#"% )"()-'+) ") <%$() *' -%+,)-,% #$'<'$.*) *'" 050)$.% '+ 0+) 7)$.)&"'8 @5A 5'%&,.'+' '" -%+,)-,% *' -0)"60.'$ 050)$.% -%+ 0+) 5%") .+5,$0--./+ 4$)-.)5 ) ") <0+-./+ #..$%&/.(01>

!= 5(. /5/#$%+A3> ! ?(9#%'?B ?)))?@ ?9+"%'?B ?)))?@ ?<+7.#<.+?B ?(9#%'? - =-

!= 5(. /5/#$%+C3> ! ?(9#%'?B ?)))?@ ?9+"%'?B ?)))?@ ?<+7.#<.+?B ?9+"%'? - =-

!23D(39/(5.$#3('3(9#%'3,('3/5/#$%+A3E3('39F"%'3,('3/5/#$%+C32-G+$9#3,(3<+7.#<.+3,(3/5/#$%+3A !! #..$%&/.(0/5/#$%+A@3/5/#$%+A)<+7.#<.+1 --

G+$9#3,(3<+7.#<.+3,(3/5/#$%+3C !! #..$%&/.(0/5/#$%+C@3/5/#$%+C)<+7.#<.+1 --

!" 5'40+*% #)$B(',$% *' ") <0+-./+ #..$%&/.(01 ,)(&.C+ #0'*' 5'$ '" +%(&$' *'" (C,%*% *' 0+%&?',%8 !+ '5,' -)5%: ,)(&.C+ 5' #0'*' 0,.".1)$ 0+ ,'$-'$ #)$B(',$% #)$) .+*.-)$ '" 7)"%$ *' "%5 )$D40('+,%5=60'=5'=#)5)+=)"=(C,%*%8

!"#$%&'"()*(+,$*%'@*'(B5 *' ") ',.60',) != 5*#<('(55 =-: '5 #%5.&"' -%+,$%")$ '" ,$),)(.'+,% *' "%5 '5#)-.%5 '+&")+-% ) +.7'" *' -)*) 7)$.)&"'8 9)$) '""% 5' )E)*' '" %#'$)*%$ H F40./+ ('*.%G '+ '" ")*% #%$ '"60'=60.'$'5='".(.+)$="%5='5#)-.%5='+=&")+-%>

!"#$%&'$(&#()*+, -./+0%1#23#(454 6#7/13%&'

!!H3"#$%#&'(3-- '.$%90"#$%#&'(1 !".(.+)="%5='5#)-.%5=*'"=")*%=.160.'$*%

!!3"#$%#&'(3H-- $.$%90"#$%#&'(1 !".(.+)="%5='5#)-.%5=*'"=")*%=*'$'-H%

!!H3"#$%#&'(3H-- .$%90"#$%#&'(1 !".(.+)=,%*%5="%5='5#)-.%5=60'=$%*')+=)"=7)"%$=*'=")=7)$.)&"'

-&,./'"I) <%$() '5,B+*)$ *' .+*.-)$ "%5 <.",$%5 F!! "#$%#&'( I 5.$%*.#65 I /**($ --G +% '5 -/(%*)-0)+*% 5' 60.'$'+ )#".-)$ "%5 (.5(%5 <.",$%5 )" -%+,'+.*% *' (0-H)5 7)$.)&"'58 !+ '5,' -)5%: '5('?%$=H)-'$=05%=*'=")=',.60',) ;%'.($>

!= ;%'.($ .%.'( I37'C&$3=-

JKAL!! +;($.#).%./'+ --JMKAL

J*L!! +;($.#),(5<$%*<%+7 --JM*L

J#3K$(;>N)))NL<+9*$#$JM#L

!= (7,;%'.($ =-

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

89:

Page 12: Libro Symfony2 Apendice Twig

!"# $%&'("# %)*%+,*"# -) &, -'%./-', !" #$%&'( ") #- ,0&%+,) , '"*"# &"# +")'-)%*"# *- #/ %)'-(%"(1)" #2&" , &,# 3,(%,4&-# " -50(-#%")-# *- 67%89 :"( ',)'"1 -) -& -;-<0&" ,)'-(%"( -& '-5'" !"#$%&% #-</-#'(,=+"<" '"#$%&%9

67%8 >, %)+&/>- &"# $%&'("# <?# +"<@)<-)'- /'%&%A,*"# ,& +(-,( &,# 0&,)'%&&,#1 ,/)./- ',<4%B) 0/-C*-# +(-,( +/,&./%-( "'(" $%&'(" ./- )-+-#%'-#9 D*-<?# *- &"# $%&'("# 4?#%+"# -50&%+,*"# -) &,# #-++%"C)-#=,)'-(%"(-#1=67%8=%)+&/>-=&"#=#%8/%-)'-#=$%&'("#=,3,)A,*"#9

#*(+,&-.1 #%<%&,( , &, $/)+%2) /($0&#-. *- :E:1 >, ./- $"(<,'-, /), +,*-), *- '-5'" #/#'%'/>-)C*"=#/#=3,(%,4&-#=0"(=&"#=3,&"(-#=%)*%+,*"#F

!1234'5&(,6278*%,29*5:;2&$'0'52<=2/40&*5721)!! 78*%,2"5;2&$'0'52">2/40&*57 ? #*(+,&-@9*5:@; <=. ))

!12A,+B$:025'2/4'>'024&$%$C,(2D,($,B%'52'02'%2#$%&(*21)!" 5'& /40&*52E <= ")

!! 78*%,2"5;2&$'0'52">2/40&*57 ? #*(+,&-@9*5:@;2/40&*5. ))

('/%,F'-.1 </> #%<%&,( ,& $%&'(" #*(+,&-. 0-(" -& $"(<,'" *- &,# 3,(%,4&-# *- &, +,*-), *- '-5'" #-0/-*-=-&-8%(=&%4(-<-)'-F

!! 78*%,210*+B('1;2&$'0'521/40&4,F$*012/40&*57 ? ('/%,F'-!

@10*+B('1@6 @9*5:@;

@1/40&4,F$*0@6 @<=@

).2))

('D'(5'1 %)3%-('- -& "(*-) *- &"# -&-<-)'"# *- /) ,((,> " *- /) "4;-'" ./- %<0&-<-)'- &, %)'-($,AG&'(,&*(F

!" 5'& F%,5$#$F,F$*02E ! @HI4$/*J@6 K<; @HI4$/*L@6 KJ; @HI4$/*M@6 JN ) ")

!" 5'& %*5O'*('52E2F%,5$#$F,F$*02? ('D'(5' ")

!12%*5O'*('52E2!2@HI4$/*M@62JN;2@HI4$/*L@62KJ;2@HI4$/*J@62K<2)1)

G& $%&'(" ('D'(5' #2&" $/)+%"), +") +"&-++%")-# *- "4;-'"#9 H% #- ,0&%+, 0"( -;-<0&" , /), +,*-),*-='-5'"1 !" #-=</-#'(,)=#/#=&-'(,#=-#+(%',#=-)="(*-)=%)3-(#"9

%'0P&Q1 *-3/-&3- -& )@<-(" *- -&-<-)'"# *- /) ,((,>1 +"&-++%2) " #-+/-)+%,9 H% -# /), +,*-), *-'-5'"1=*-3/-&3-=-&=)@<-("=*-=&-'(,#F

!12@*#'(&,5@2'5240,2D,($,B%'2I4'25'2/,5,2,2%,2/%,0&$%%,21)R'2Q,02'0F*0&(,>* !! *#'(&,5?%'0P&Q ))2*#'(&,5

!" 5'& ,B'F'>,($*2E @,@SS@C@ ")

H%2,B'F'>,($*2'02$0P%:52&$'0' !! ,B'F'>,($*2? %'0P&Q ))2%'&(,5

!" 5'& %*0P$&4>2E @,0&$F*05&$&4F$*0,%+'0&'@ ? %'0P&Q ")

T,2/,%,B(,2+U52%,(P,2'02'5/,V*%2&$'0' !! %*0P$&4> ))2%'&(,5

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 13: Libro Symfony2 Apendice Twig

!"#$! "#$%&' (") %(%*%&+") $% ,& '##'- '.(/0'&$" (' 1,&0/2& %!"#$&' $% 343! ."# (" 5,% )% *'&6+/%&%&7(")78&$/0%)7%&7(")7'##'-)7')"0/'+/9"):

() !*$ +",$%+$"!-. /

( 0,"12#*03 04%#5%06 0%7*889:"!0 3 0;;;0 <6

( 0,"12#*03 0=82*#$"06 0%7*889:"!0 3 0;;;0 <6

( 0,"12#*03 0>"!?06 0%7*889:"!0 3 0;;;0 <6

@-)<

() A"# +",$%+$"-9,-+",$%+$"!B!"#$-)<

(( +",$%+$";,"12#* <<

() *,:A"# )<

(C-D*-1E*!$#%,-*,-*!$*-"#:*,3-=82*#$"6->"!?6-4%#5%-C<

() !*$ +9E:%:*!-. /0F%#9!06 0G",:#*!06 0H"I9"06 0JE*K%-L"#I0@ )<

() !*$ "#:*,%:%!-.-+9E:%:*!-B !"#$ )<

(C-"#:*,%:%!-.-/0G",:#*!06-0JE*K%-L"#I06-0F%#9!06-0H"I9"0@-C<

1*#M*!70"*;/&'7%(7'##'-75,%7)%7/&$/0'70"*"7.'#<*%+#"70"&7%(7'##'-7)";#%7%(75,%7)%7'.(/0'7%(71/(+#":

() !*$ :"+E1*,$"!-. /0NOP06 0FNQ0@ )<

() !*$ 91%M*,*!-. /0FJR06 0>FR06 0RSQ0@ )<

() !*$ K9:*"!-. /0=TS06 0QGT06 04OT0@ )<

() !*$ A"#1%$"!-.-:"+E1*,$"!-B 1*#M*&91%M*,*!' B 1*#M*&K9:*"!' )<

(C-A"#1%$"!-.-/0NOP06-0FNQ06-0FJR06-0>FR06-0RSQ06-0=TS06-0QGT06-04OT0@-C<

U!",V*,+":*! 0"$/1/0' %( 0"&+%&/$" $% (' 9'#/';(% )%=>& (' &"+'0/2& ?@ABC D&+%#&'*%&+% ,+/(/E' ('1,&0/2& U!",V*,+":*&' $% 343! ."# (" 5,% %) /$%'( %& (') .('&+/((') $% (') '.(/0'0/"&%) F?FG -?'9'@0#/.+C

() !*$ 7*#A98-. (

0,"12#*03 0>"!?-R%#+5%06

0*:%:03 WX6

0$*8*A","!03 /0*1%98YZ8"+%8["!$06 0*1%98WZ8"+%8["!$0@

< )<

(( 7*#A98-B U!",V*,+":* <<

(C-4E*!$#%3-(\,"12#*\3\>"!?-R%#+5%\6-\*:%:\3WX6\$*8*A","!\3/\*1%98YZ8"+%8["!$\6-\*1%98WZ8"+%8["!$\@<C<

E#8V*,+":*! 0"$/1/0' %( 0"&+%&/$" $% (' 9'#/';(% .'#' ."$%# /&0(,/#(" $% 1"#*' )%=,#' 0"*" .'#+%$%7,&'7HIJC7D&+%#&'*%&+%7,+/(/E'7('71,&0/2& E#8*,+":*&' $%7343C

() !*$ +",!E8$%-. 0+9E:%:.7%#9!]"#:*,.%!+*,:*,$*]8519$*.Y^0 )<

(( +",!E8$%-B E#8V*,+":* <<

(C-4E*!$#%3-+9E:%:)_N7%#9!)W`"#:*,)_N%!+*,:*,$*)W`8)P_)=N19$*)_NY^-C<

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 14: Libro Symfony2 Apendice Twig

!"#$%&'(%#!")*#+! "#$%&'(#)$ *%$ +$,-%$ ,- "-."( $ /$ +(,0'0+$+01% 0%,0+$,$2 3&"- '0/"#( !"#$ %!&'

()!*$+),#% (%!(% #- .%/!)"+ 012 (% 34)5 4 #-5*0-#- 5*- -&"6 $+"07$,$ ( /$ -."-%&01% *!"#$ ( /$

-."-%&01% ,-.'&*#+8

// )%.!&*0!*"#12 !"#$%&'(%#!")*#+34567894: 4*."899;<8=4> ??

3/ 9#0)-# 9$#:)-"#( -& /$ +(,0'0+$+01% $ /$ 5*- &- +(%70-#"- /$ +$,-%$ 4 -/ &-;*%,( 9$#:)-"#( 0%<,0+$=&*=+(,0'0+$+01%=(#0;0%$/2

!"#$%&'()*+"*"'#$,">()( &- -.9/0+1 -% /$ &-++01% !"#$ %&'& (&)*+,&-.'+/! ?@0; $9/0+$ 9(# ,-'-+"( *% )-+$%0&)( ,--&+$9- $/ +(%"-%0,( ,- "(,$& /$& 7$#0$A/-&2 B$#$ -70"$#/( -% *%$ 7$#0$A/- -&9-+C'0+$! $9/C+$/- -/ '0/"#(&@A8

// $@&*@-B%12 &@A ??

D0 *"0/0E$& D4)'(%4F! 9*-,-& +(%"#(/$# -/ -&+$9$,( $*"():"0+( ,- 7$#0$A/-& +(% /$ (9+01%@C'"%.!@0% ,-/=&-#70+0( 'A*+ -%=-/=$#+G07(=,-=+(%'0;*#$+01% @00D!"#E*+D!"#E*+FG,B8

H1@00D!"#E*+D!"#E*+FG,B'A*+I

@C'"%.!@0%I '&C%

3/ 7$/(# '&C% -& &* 7$/(# 9(# ,-'-+"( 4 G$+- 5*- "(,$& /$& 7$#0$A/-& ,- /$ 9/$%"0//$ &- -&+$9-%2 B$#$%( $9/0+$# -/ )-+$%0&)( ,- -&+$9- $ %0%;*%$ 7$#0$A/-! *"0/0E$ -/ 7$/(# E@B.%2 H,-):&! -.0&"- *%"-#+-# 7$/(# //$)$,( J. 5*- $9/0+$ *% -&+$9- ):& $9#(90$,( +*$%,( /$& 9/$%"0//$& ?@0; ;-%-#$%I$7$D+#09"=-%=7-E=,-=J?KL2

H*%5*- ,-&G$A0/0"-& -/ -&+$9$,( $*"():"0+( ,- 7$#0$A/-&! 9*-,-& -&+$9$# +$,$ 7$#0$A/- 0%,070,*$/<)-%"-=)-,0$%"-=-/='0/"#( %.!@0% ( %8

/H1K.!@0@#)"1%B1!"#'%#*)"1)%1C#@1$@&*@-B%1H?// $@&*@-B%12 %.!@0% ??

/H1KLC*$@B%#'%1@B1@#'%&*"&:10%&"1,M.1!"#!*."1H?// $@&*@-B%121% ??

-'./0#.0/$*+"*#)%./)1 2)/L$ -&"#*+"*#$ ,- +(%"#(/ E"& -& *% A*-% -M-)9/( ,- +1)( ?@0; +()A0%$ /$ '$+0/0,$, ,- *&( +(%("#$& (9+0(%-& )*+G( ):& $7$%E$,$&2 3/ *&( A:&0+( ,-/ E"& +(%&0&"- -% 0"-#$# &(A#- "(,(& /(& -/-<)-%"(&=5*-=+(%"0-%-=*%$=+(/-++01%=,-=7$#0$A/-&8

/N E"& @&'*!CB"1*#1@&'*!CB".1N?

/H1FFF1H?/N1%#)E"&N?

B$#$ 5*- -/ +1,0;( $%"-#0(# '*%+0(%- +(##-+"$)-%"-! %( -& (A/0;$"(#0( 5*- /$ 7$#0$A/- @&'*!CB".&-$ *% $##$42 N$&"$ +(% 5*- /$ 7$#0$A/- &(A#- /$ 5*- &- 0"-#$ 0)9/-)-%"- /$ 0%"-#'$E 6&@$%&.@-B% (

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!""

Page 15: Libro Symfony2 Apendice Twig

!"#$%&'()! "# $%&'%()(* ($+#,(,#&-.* ,&- "/)0&-/1 / 2&,3%#-.14 +(* ,&+.,,#&-.* 5. &67.3&* 89.5.:9.+:.-;+(*;6<*89.5(*;5.;2&,3%#-.1;/(;#)$+.).-3(-;.*(;#-3.%0(=!

>?#' 3()6#@- $.%)#3. #3.%(% *&6%. %(-'&* 5.0#-#5&* 5.-3%& 5.+ $%&$#& 69,+. '%(,#(* (+ &$.%(5&% *$A

+, -". */*$ 012 32 45 ,6

+7/888/76+, )$9-". ,6

B&* :(+&%.* *&6%. +&* 89. #3.%( *$ 3()6#@- *. $9.5.- 5.0#-#% ).5#(-3. *.,9.-,#(* 5. :(+&%.* '%(,#(*(+;&$.%(5&% 884;,9/&;09-,#&-()#.-3&;.*;#5@-3#,&;(+;5.;+(;09-,#C- .&$:);< 5.;DEDA

+, -". */*$ =88>= ,6

+7/888/76+, )$9-". ,6

+, -". */*$ ?&?88?@? ,6

+7/888/76+, )$9-". ,6

F5.)G* 5. +( .*3%9,39%( -". H(6#39(+4 >?#' H( #5.(5& 9-( :(%#(-3. ++()(5( -". 888 )(A)4 *#)#+(%(+ *-/888/)(A)4;/;89.;$9.5.;%.*9+3(%;)9/;<3#+A

+, -". &.%*B#("/*$/&.%*B#("A/,6

+7/888/76+, )(A) ,6

C"/)D*A%)$/&.%EB#("A

+, )$9-". ,6

"# .- .+ ,C5#'& (-3.%#&% +( :(%#(6+. &.%*B#("A -& ,&-3#.-. -#-'<- .+.).-3&4 .- :.= 5. #3.%(%*. *&I6%. *9* ,&-3.-#5&*4 *. .7.,93( 5#%.,3().-3. .+ ,C5#'& .-,.%%(5& $&% )(A)! 2. .*3( 0&%)(4 *# 9-(,&-*9+3( ( +( 6(*. 5. 5(3&* 5.:9.+:. :(%#&* %.'#*3%&*4 *. )9.*3%(- .- 0&%)( 5. +#*3(5&J $.%& *# +(,&-*9+3(;5.:9.+:.;9-;%.*9+3(5&;:(,K&4;*.;)9.*3%(;.+;).-*(7. !"#$%&'()%*$+,)-./0#(!!

B( .*3%9,39%( -". 888 )(A) .* 9- 69.- .7.)$+& 5. +(* 93#+#5(5.* 89. #-,+9/. >?#' $(%( H(,.% +(*$+(-3#++(*;)G*;,&-,#*(*;/;0G,#+.*;5.;+..%;/;89.;-&;.*3G-;5#*$&-#6+.*;.-;DED!

B( .*3%9,39%( 5. ,&-3%&+ -". ,%.( .- *9 #-3.%#&% 9-( :(%#(6+. .*$.,#(+ ++()(5( (""F ,&- +( 89. *.$9.5.;&63.-.%;#-0&%)(,#C-;*&6%.;,(5(;#3.%(,#C-A

+, -". &.%*B#("/*$/&.%*B#("A/,6

G.%EB#("/$HI)." ++ (""F8*$9)D 66

J"9&KE&/-&(%&$ ++ (""F8.)K*$9)D 66/&.%EB#("A

+, )$9-". ,6

B(*;$%&$#.5(5.*;5#*$&-#6+.*;.-;+(;:(%#(6+. (""F *&-;+(*;*#'9#.-3.*A

!"#$%&'(' )#*+&*%'#

(""F8*$9)D L<).%&;5.;#3.%(,#C-4;*9$&-#.-5&;89.;+(;$%#).%(;.*;.+;-<).%& >!

M7A >4 L4 14;!!! C

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

,--

Page 16: Libro Symfony2 Apendice Twig

!"#$%&'(' )#*+&*%'#

!""#$%&'()* !"#$%&'($')*$%+,)-./'012&.)$.(&'31$'4+'2%)#$%+'$0'$4'."#$%& *5

678 */ +/ ,/'555 -.+

!""#$/(0%&'() !"#$%&'($')*$%+,)&.$0'31$'9+4*+./'012&.)$.(&'31$'4+'2%)#$%+'$0'$4'."#$%& +5

678 -/ -.+/ -.,/'555 +

!""#$/(0%&'()* !"#$%&'($')*$%+,)&.$0'31$'9+4*+./'012&.)$.(&'31$'4+'2%)#$%+'$0'$4'."#$%& *5

678 -.+/ -.,/ -.1/'555 *

!""#$2%/34 4/5( 0)'$0'4+'2%)#$%+')*$%+,)-./ 26!3( $.',1+431)$%'&*%&',+0&

!""#$!634 4/5( 0)'$0'4+'"4*)#+')*$%+,)-./ 26!3( $.',1+431)$%'&*%&',+0&

!""#$!(&748 !"#$%&'*&*+4'($')*$%+,)&.$0

6#24$+.(&'4+':+%)+;4$'$02$,)+4 !""# %$014*+'#1<'0$.,)44&',%$+%'2&%'$7$#24&'1.'2+=).+(&%8

9: 2"/ #67%&6;%&;#67%&63;:<

9: %2 &"4;!""#$2%/34 :< =6;8/(2>?$$$?@A&4(/%"/=B6@ 9: (&'%2 :<

9C;$$$;C<

9: %2 &"4;!""#$!634 :< =6;8/(2>?$$$?@D%75%(&4(=B6@ 9: (&'%2 :<

9: (&'2"/ :<

>&0 ;1,4$0 2"/ *+#;)?. 0$ 21$($. +.)(+%5 6. $0*$ ,+0&/ 21$($0 +,,$($% + 4+ :+%)+;4$ !""# ($4 ;1,4$2+(%$'+'*%+:?0'($'4+'2%&2)$(+( #6/(&48

9: 2"/ 3(EE%"&;%&;3(EE%"&(3;:<

9: 2"/ E64(7"/%6;%&;E64(7"/%63;:<

D(EE%F&;&GH(/" 99 !""#$#6/(&4$!""#$%&'() <<

I64(7"/J6;&GH(/" 99 !""#$%&'() <<

9: (&'2"/ :<

9: (&'2"/ :<

@) $. :$A ($ )*$%+% 2&% 4&0 $4$#$.*&0 ($ 1.+ :+%)+;4$ 31)$%$0 B+,$%4& 2&% 010 ,4+:$0/ 1*)4)A+ $4 9)4*%&K(L38

9: 2"/ E"'%7";%&;#/"'5E4"3;M K(L3 :<

9C;$$$;C<9: (&'2"/ :<

C+#;)?.'21$($0'1*)4)A+%'$4'9&%#+*&'+4*$%.+*):&'($4';1,4$ 2"/8

9: 2"/ E"'%7"N;#/"'5E4";%&;#/"'5E4"3;:<

9C;$$$;C<9: (&'2"/ :<

>+ ($0:$.*+7+ ($ 4&0 ;1,4$0 2"/ ($ CD)= %$02$,*& + 4&0 ($ EFE $0 31$ .& $G)0*$. #$,+.)0#&0 2+%+$4 ,&.*%&4 ($ 4+0 )*$%+,)&.$0/ ,&#& O/(6K H2+%+ ($*$.$% $4 ;1,4$I & E"&4%&5( H2+%+ 0+4*+% 1.+ & #J0)*$%+,)&.$0I5

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

,-.

Page 17: Libro Symfony2 Apendice Twig

!" "#$%&'%() ! "!#$%# &' (! )'#*%+, -./ &' 01%2 ($ *"$+#,( -+,%.&. ,& $(/0('/+& $"#.( ,& 10( +%(.& (,

#0/,( !"#2

$%&'()#*#&+,-"&+".#)&-*+&"!)#(*+&.*#*(*+&%/$0 !"# "!)#(*&12&"!)#(*+ 1! "!)#(*34#)51" 6 78 0/

$%&333&%/$0 )29!"# 0/

$%&'()#*#&+,-"&+".#)&-"+&2:;)#"+&1;4*#)+&%/$0 !"# 2<;)#"&12 733788 1! 2<;)#"&1+ "99 0/

$%&333&%/$0 )29!"# 0/

$%&=,-"&1()#*&+".#)&-"+&<+<*#1"+&><)&+)*2&*;1?"+&%/$0 +)( <+<*#1"+&@ 733A8 0/

$0 +)( *;1?"+&@ B7CD CED AFD GGD HIJ 0/

$0 !"# <+<*#1"&12&<+<*#1"+ 1! <+<*#1"&12&*;1?"+&0/

$%&333&+,-"&1()#*&+".#)&7C&K&CE&333&%/$0 )29!"# 0/

34+5 %&6#+7' +'/,08( 9"$ -0'/+"'($ 608 :%+,($ *&.& ,"$ #0/,($ !"#2 #*2?)LM 8 5K5-)LM; <& -0'/+='#*2?)LM) 10( +'%(.'&6('%( 0%+,+>& ,& -0'/+=' #*2?)LM 9( ?@?) ($ $+6+,&. &, "*(.&9". 33 10( /.(&$(/0('/+&$) *(." &A&9( 0' %(./(. *&.B6(%." "*/+"'&, *&.& /"'%.",&. (, $&,%" ('%.( 9"$ C&,".($ /"'D$(/0%+C"$2

$%&'()#*&+".#)&("9*+&-*+&-)(#*+&9)-&*-!*.)("&12?-N+&%/$0 !"# -)(#*&12 #*2?)LO*OD OPOM 0/

$%&*D&.D&5D&333D&QD&KD&P&%/$0 )29!"# 0/

$%&R1+;"&#)+<-(*9"&><)&)-&5,91?"&*2()#1"#&%/$0 !"# -)(#*&12 O*O33OPO 0/

$%&*D&.D&5D&333D&QD&KD&P&%/$0 )29!"# 0/

$%&'()#*&+".#)&<2*&9)&5*9*&(#)+&-)(#*+&9)-&*-!*.)("&12?-N+&%/$0 !"# -)(#*&12 #*2?)LO*OD OPOD AM 0/

$%&*D&9D&?D&SD&;D&4D&+D&TD&K&%/$0 )29!"# 0/

$%&'()#*&+,-"&+".#)&-"+&2:;)#"+&4*#)+&%/$0 !"# 2<;)#"&12 #*2?)L8D G8D CM 0/

$%&8D&CD&FD&333D&FHD&FUD&G8&%/$0 )29!"# 0/

<& -0'/+=' 5K5-)LM .(/"..( $(/0('/+&,6('%( ,"$ (,(6('%"$ 9( 0' &..&8; E0&'9" ,,(5& &, :,%+6"(,(6('%")FC0(,C(F&,F*.+6(.")F*".F,"F10(F(,F&..&8F$(F*0(9(F.(/"..(.F+'-+'+%&6('%(;

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 18: Libro Symfony2 Apendice Twig

!"#$%&'()#*+&)*#,#*(-+&)*#&#.&'&#/(0&#'1#0&#2&30&#"452&3016

!7 /,) ,/1)2&#(8#,/1)2&9#74

52)#.0&99:;!! .<.01=>*+&)*? *(-+&)*@?#0,,+A(8'1BC 44;6

!"#AAA#"45D2)6

!7 18'/,) 74

5D2&3016

!"#$ %&$'#(&&$ )* +,(- -*'*.$ *& "(-/(*'#* 01)(-2 3+45 6*& '78*.2 )* 9(&$" )*%*')* )*& '78*.2)*:*&*8*'#2":)*:&$:;$.($<&* ,/1)2&9=>

52&3016

52) .0&99:;(-+&);6

AAA

5D2)6

52) .0&99:;+&);6

AAA

5D2)6

52) .0&99:;(-+&);6

AAA

5D2)6

5EFF#AAA#FF6

52) .0&99:;+&);6

AAA

5D2)6

5D2&3016

!& %.(8*. %$.?8*#.2 )* &$ 9/'0(1' .<.01=C *" *& $..$@ 02' &2" *&*8*'#2" A/* "* .*02..*' 0B0&(C0$8*'#*D !& "*-/')2 %$.?8*#.2 (')(0$ *& '78*.2 )* *&*8*'#2 "*&*00(2'$)2 6"( *" 8$@2. A/* *&'78*.2 )* *&*8*'#2"E "* ;/*&;* $ *8%*F$. %2. *& %.(8*. *&*8*'#2=D G( A/(*.*" /#(&(F$. *& '78*C.2 )* (#*.$0(1' %$.$ "*&*00(2'$. *& *&*8*'#2E .*0/*.)$ A/* )("%2'*" )* &$" ;$.($<&*" *"%*0($&*"0,,+A(8'1B @ 0,,+A(8'1BGD

!"#$%&#%$'()*(&+,#$+- ./!& /"2 <?"(02 )* &$ *"#./0#/.$ )* 02'#.2& (/ *" "(8(&$. $& )* 0/$&A/(*. 2#.2 &*'-/$H* )* %.2-.$8$C0(1'>

!7 (/ H9H&)(,A.,81.2&', 74

!"#AAA#"4!7 18'(/ 74

+,(-:#$8<(I':"2%2.#$:&2":82)(9(0$)2.*" 1091(/ @ 1091>

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 19: Libro Symfony2 Apendice Twig

!" #$ %&%'(#)*+),-+.'/) "0

!12***210!" -3&-#$ %&%'(#)*(-4#&.('/) "0

!12***210!" -3&- "0

!12***210!" -,/#$ "0

!"#$%&$'()' &% '*)#+,)+#% #$ *' ,"$-.(% ,"( &"* "/'#%0"#'* #& ' #& ,). 1 %&2+(" 0' &"* )'*)*0'3.(.0"*4/"#456.27

!" #$ 5'(.#+#5',.-&2#& /#6#&#73-789:; "0

!12***210!" -,/#$ "0

!" #$ /-&+(#5+#),2#&2,). -<5.8 "0

!12***210!" -,/#$ "0

8%4*.2+.'()'4)%-&%4$+'*)#%4)"0"*4&"*4)'*)*49+'4.(,&+1'456.24/"#40'3',)"7

!"#$ %&'()*+*),- .,/)0123432"56)7+("-$"

/#6#&#73-789,%<-(); :"$/#+'-%4*.4&%4;%#.%-&'4'*40.;.*.-&'4/"#4'&;%&"#4.(0.,%0"

=2>>2?6'(#'73-2"2?,%<-()

-6-, :"$/#+'-%4*.4&%4;%#.%-&'4'*4+(4(<$'#"4/%# =2>>2?6'(#'73-2"2@

)// :"$/#+'-%4*.4&%4;%#.%-&'4'*4+(4(<$'#"4.$/%# A2>>2?6'(#'73-2"2@

,),- :"$/#+'-%4*.4&%4;%#.%-&'4'* ,%33 ,%332>>>2?6'(#'73-

/-$#,-/ :"$/#+'-%49+'4&%4;%#.%-&'4=%1%4*.0"40'3.(.0% #&&-.9?6'(#'73-;

-<5.8 :"$/#+'-%4*.4&%4;%#.%-&'4'*)>4;%,?% $'3&-2>>>2?6'(#'73-2BB

9-<5.89?6'(#'73-;2CC2D=D

E>2?6'(#'73-;

+),&.',.96'3)(; :"$/#+'-%4*.4&%4;%#.%-&'4,"().'('4+(4;%&"#.2+%&4%4&%4,"(*)%()'4.(0.,%0%

+),&.',.9?6'3)(;2>>>

?6'(#'73-

&'<-'&96'3)(; :"$/#+'-%4*.4+(%4;%#.%-&'4'*4.0@().,%4%4")#% ?6'(#'73-2>>>2?6'3)(

A'()#" 0' &% '*)#+,)+#% 0' ,"()#"& #$ )%$-.@( #'*+&)%( $+1 <).&'* &"* "/'#%0"#'* /%#% ,"(*)#+.#'B/#'*."('*4,"$/&'C%*4"4/%#%4,"$-.(%#4;%#.%*4'B/#'*."('*4'()#'4*?D

!"#$%&'$#()*+,-.'(

8'"9+/19 %&'()*+*),- %:";'(1#

',/ A';+'&;' .(%- *"&%$'()'4*.4&"*40"*4"/'#%(0"*

0'4&%4'B/#'*.E(4*"( .(%-

!"2#$2%&%'(#)*(-4#&.('/)2',/

%&%'(#)*-/'/2F2AG2"0

CC !")%,.E(4%&)'#(%).;%40'&4"/'#%0"# ',/

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

<=>

Page 20: Libro Symfony2 Apendice Twig

!"#$%&'$ ()"*+,%,+-. (/#0"*'1

!" !"#$"%#" #"$% &'()%*$+,(-"(%,&(-,&(,."/)+-,&(-"

%)("0./"&'1+(&,+ #"$%

&'()*(+"!,!-)!./0!120(!"

+"!3$-#!4%.5"!,!-)!.('6

77 2,3)4'1+()%3"/+)3'#)(-"%(,."/)-,/ !"

.!# !"#$"%#"("%(#)%,/(4,+3/)/',(-"(%)("0./"&'1+"#)%$)-)

&'()*(.!#($0#),!80%,%.#!('6

5,&(.)/6+3"&'&(."/7'3"+()*/$.)/("0./"&',+"&(4,7.%"8)&9

&' )* 9$:$2")!4"%;):#"23! 2.3(+2;).242-#)<2=

!" 9$:$2")!4"%;):#"23! 2.3($:$2")!4+"),%"2>):)#2=

!"($:$2")!423,).):#"23!" '6

444

!"#$%&'$#()&#)*'+"%$%*,-.

!"#$%&'$ ()"*+,%,+-. (/#0"*'1

?? !"#$"%#" #"$% &'(%,&(-,&(,."/)+-,&(&,+('*$)%"& &'()*(+%3)3!4#)+!(??

@$";%.#%@('6

A? !"#$"%#" #"$% &'(%,&(-,&(,."/)+-,&(&,+(-':"/"+3"& &'()*(+%3)3!4#)+!(A?

@$";%.#%@('6

B !"#$"%#" #"$% &'("%(./'7"/(,."/)+-,("&(7);,/(<$"("%&"*$+-,

&'()*($:$2")!4%323(B(CD('6

E !"#$"%#" #"$% &'("%(./'7"/(,."/)+-,("&(7"+,/(<$"("%&"*$+-,

&'()*(+"!3$-#!4:#!-F(E(CG

'6

B? !"#$"%#" #"$% &'("%(./'7"/(,."/)+-,("&(7);,/(,('*$)%<$"("%(&"*$+-,

&'()*(-"%3)#!(B?(0),)#%('6

E? !"#$"%#" #"$% &'("%(./'7"/(,."/)+-,("&(7"+,/(,('*$)%<$"("%(&"*$+-,

&'()*(+"!3$-#!4:#!-F(E?

$,1"20('6

!"#$%&'$)*'./#.#&'$

=>'* -":'+" $+ ,."/)-,/ )-'4',+)% %%)7)-, ). <$" 4,7./$"?) &' $+ #)%,/ &" "+4$"+3/) -"+3/, -"%)(4,%"44'1+('+-'4)-)9

&H(I%<$%0<%(#"$%(+!"J$%(%0(.K,%"!(L(:%(%.-$%.#"2(3%.#"!(3%(02(-!0%--)M.(H6&& L ). NCO CO PO LO QO DO CLR 66

&H(I%<$%0<%(#"$%(:)(0%#"2(%:($.2(<!-20(H6&& 0%#"2(). @2%)!$@ 66

&H(S!,+"$%12(:)($.2(-23%.2(:%(%.-$%.#"2(%.(!#"2(H6&' )* +2::T!"3().(0!;).('6

8UUVUW(02(-!.#"2:%X2(.!(+$%3%(:%"($.2(+2"#%(3%0(0!;).

&' %.3)* '6

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

232

Page 21: Libro Symfony2 Apendice Twig

!"#$%&'&(" )* "+),'(", !" -"& )* .)/. "#$ 0 *' )/.,1-.1,' !% /) +1)()& )2'*1', -"& 3'-%*%('( )45+,)/%"&)/6-"#+*)7'/8

&' !% ()(*+!#,"!-./ !" 01)(2.+!#+13 1*-*"4*5#13 1.62.+$#17 '8

&9:,,,:98&' ."5!% '8

&' !% "(;.+#:"#$:!" <,,=< '8

&9:,,,:98&' ."5!% '8

!"#$%&'$#()*%+#*,+-.'(

!"#$%&'$ ()"*+,%,+-. (/#0"*'1

> 91#'6("/6&:#),"/6"6)*62'*",6()6("/62',%'$*)/ &&:?:>:=:88 ,)/1*.'(" @

A#$*/B:&&:2+.C!#:>:!;2(.)$#):88

D ;)/.'6("/6&:#),"/6"6)*62'*",6()6("/62',%'$*)/ &&:E:D:@:88 ,)/1*.'(" DF

A#$*/B:&&:2+.C!#:D:5.)C(."$#:88

G <1*.%+*%-'6("/6&:#),"/6"6)*62'*",6()6("/62',%'$*)/ &&:=:G:H:88 ,)/1*.'(" EF

I(J$#$*/B:&&:2+.C!#K"!$*+!#:G

("!5*5.):88

L =%2%()6("/6&:#),"/6"6)*62'*",6()6("/62',%'$*)/ &&:E=:L:@:88 ,)/1*.'(" =,F

M+.C!#:;.5!#B:&&:$#$*/:L

"(;.+#N+$!C(/#):88

LL =%2%/%>&6)&.),'6()6("/6&:#),"/6"6()*62'*",6()6("/2',%'$*)/

&&:E=:LL:@:88 ,)/1*.'(" =

O(P*5*):+.)$*"$.)B:&&:5!".+#:LL

2+.C!#M#+N2(.)$*:88

' <>(1*"6"6,)/."6()6*'6(%2%/%>&6)&.),'6()6("/&:#),"/6"6()*62'*",6()6("/62',%'$*)/

&&:H:':=:88 ,)/1*.'(" E

GG ?*)2'6)*6+,%#),6&:#),"6'6*'6+".)&-%'6()*6/)@1&("&:#),"

&&:@:GG:=:88 ,)/1*.'(" =@

&&:H:GG:?:88 ,)/1*.'(" ?F?

A", :*.%#"B CD%@ .'#$%E& /"+",.' )* "+),'(", .),&',%" () AFA QB *" G1) +),#%.) -,)', +*'&.%**'/."('2H'6#I/6-"&-%/'/8

&& ()(*+!#,+.P!)$+*5# Q 1R.+:2.+%!/1 B 1S.PT)$+*$.1 88

&& 2+#5(C$#,)$#CU V E<

Q 1IW/#:X(.5*":1 Y:2+#5(C$#,)$#CU Y 1:("!5*5.)1

B:2+#5(C$#,)$#CU Y 1:("!5*5.)1

88

!"#"$%&'()"(*+'$,&++'-9)@:& *' ("-1#)&.'-%>& "3%-%'* () CD%@B *' J),)&-%' () +*'&.%**'/ )/ /1 -','-.),H/.%-' #I/ ()/.'-'5('K6!"#"6/1-)()6-"&6*'6J),)&-%'6()6-*'/)/B6)*6"$7).%2"6)/6*'6,)1.%*%L'-%>&6()6->(%@"K

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

234

Page 22: Libro Symfony2 Apendice Twig

!"#$%&# '() (&# #*+%,#,%-& .)/ 0%1*2&) 0) 021 *3$%&#1 ++#"#0#1 !"#$%&%'($)*'$+,- 4."/$%.$"'($)*'$+,- ,2&5)+51%$(%)&6)5,2&6)&%027

012!"#$%&%'($)*'$+,-213456789:;<2($)*=

4($)*=

4(>%&=

4)>$%2($$!?>@A,BCD8"/$>/$?9E!>D2."/$>/$CD$>F$G($)*H2.(%#I>$CA$J?KD2G=

4$,$*>=8A!"/L2*%I2)>M"#>I2"J>#$%I2E2*"I2)>M"#>I2!#>.,"I4G$,$*>=

4*,/N2(#>JCD>I$,*"I'.IID2#>*CDI$E*>I(>>$D2$E!>CD$>F$G.IID2G=

4G(>%&=

4O"&E=

4(P=Q%2"J>#$%2&>*2&R%4G(P=

012'''2134GO"&E=

4G($)*=

012."/$%.$"'($)*'$+,-213456789:;<2($)*=

4($)*=

4(>%&=

4)>$%2($$!?>@A,BCD8"/$>/$?9E!>D2."/$>/$CD$>F$G($)*H2.(%#I>$CA$J?KD2G=

4$,$*>=8"/$%.$"4G$,$*>=

4*,/N2(#>JCD>I$,*"I'.IID2#>*CDI$E*>I(>>$D2$E!>CD$>F$G.IID2G=

4G(>%&=

4O"&E=

4(P=8"/$%.$"4G(P=

012'''2134GO"&E=

4G($)*=

8#1 021 *3$%&#1 ,2"*#96)& +# "%1"# )169(,6(9# 4 "(,:#1 )6%'()6#1 ;<=8> 8# :)9)&,%# 0) *+#&?6%++#1 0) <.%$ *92*2&) ,9)#9 (&# &()@# *+#&6%++# /#1) '() %&,+(4# 62021 +21 )+)")&621 ,2"(&)1 40)1*(A15:#,)95'()5,#0#5*+#&6%++#5%&0%@%0(#+5:)9)0)50)5+#5&()@#5*+#&6%++#5/#1)>

B#9#5)++2C5,9)#5)&5*9%")95+($#95(&#5*+#&6%++#5++#"#0# O%I>'($)*'$+,-7

012O%I>'($)*'$+,-213456789:;<2($)*=

4($)*=

4(>%&=

4)>$%2($$!?>@A,BCD8"/$>/$?9E!>D2."/$>/$CD$>F$G($)*H2.(%#I>$CA$J?KD2G=

4$,$*>=112<Q29S9TQ72114G$,$*>=

4*,/N2(#>JCD>I$,*"I'.IID2#>*CDI$E*>I(>>$D2$E!>CD$>F$G.IID2G=

4G(>%&=

4O"&E=

112<Q287U9<UV67211

4GO"&E=

4G($)*=

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 23: Libro Symfony2 Apendice Twig

!" #$ %&'()* +",#-(*-. /# 0+" 1+-%+'* %*1* !! "# $%$&#' !! 2 !! "# (')$")*+' !! $+/ 3+-,#/45# %+16(+" #" %+'+ 3$+",($$+7 !" 89() #/,+/ 3+-,#/ 45# ,(#"#" 45# -#$$#"+- %+'+ 3$+",($$+ /# '#"*:1("+";6$*45#/;2;/#;'#<("#";%*";$+;#,(45#,+ ,-./0=

1!2,3456789-68:;<2!=>?+'($@A"2789-B

>789-B

>753CB

>95832788DE5FG;HIJ(.K85K8E$LD5J2/.K85K8IJ85M8N789-O2/73P458IG8QERJ2NB

>8;8-5B1S ,-./0 8;8G-.2S=1S 5KC,-./0 S=>N8;8-5B

>-;K027P5QIJ548;-.46/44J2P5-IJ48L-547558J28LD5IJ85M8N/44J2NB

>N753CB

>,.CLB

1S ,-./0 /.K85K;C.2S=1S 5KC,-./0 S=

>N,.CLB

>N789-B

>,($(?+"'*;#/,+;3$+",($$+;6+/#.;35#'#/;-#0+%#-;$+ D.P83C36789-68:;< '#;$+;/()5(#",#;1+"#-+=

1!2D.P83C36789-68:;<2!=1S 5M85KC4 T,3456789-68:;<T S=

1S ,-./0 8;8G-.2S=(GD.KU-34295V.P542.Q5P8342L2-.4295V.P542DP5/;.41S 5KC,-./0 S=

1S ,-./0 /.K85K;C.2S=

>7WB#32.Q5P832C5-2CX3>N7WB

1!26662!=1S 5KC,-./0 S=

@5+"'* 5"+ 3$+",($$+ 0#-#'+ '# *,-+. /5 3-(1#-+ #,(45#,+ '#6# /#- 1S 5M85KC4 S=7 A# #/,+ <*-1+/# ("'(%+ $+ -5,+ '# $+ 3$+",($$+ '# $+ 45# 0#-#'+7 B( 5,($(?+/ 89() #" B21<*"2C. ("'(%+ #/,+ -5,+ #"!"#$%&'! ()!*+, D,GKC-5Y/3PD583YD-3K8;--3E7 B( 5,($(?+/ 89() #" 5" 3-*2#%,* FGF ("'#3#"'(#",#.("'(%+ $+ -5,+ '# <*-1+ -#$+,(H+ D-#/3#%,* +$ '(-#%,*-(* '# 3$+",($$+/E * +6/*$5,+ D-#/3#%,* +$ /(/,#1+'#;+-%0(H*/E7

>"+ H#? +I+'('+ $+ #,(45#,+ 1S 5M85KC4 S=. #/,+ 3$+",($$+ 2+ /&$* 35#'# -#$$#"+- $*/ 6$*45#/ '#%*",#"('* '#<("('*/ #" $+ 3$+",($$+ 6+/#7 B( ,-+,+/ '# +I+'(- "5#H*/ 6$*45#/ * %*",#"('*/ G8JK.89();15#/,-+;5";1#"/+L#;'#;#--*-7

B()5(#"'* #$ 1(/1* #L#13$*. %*1* D.P83C36789-68:;< 0#-#'+ '# $+ 3$+",($$+ ,3456789-68:;<./&$*;35#'#;%-#+-;%*",#"('*/;'#",-*;'#;'*/;6$*45#/;$$+1+'*/ 8;8G-. 2 /.K85K;C.7

!$ 1#%+"(/1* '# 0#-#"%(+ #" 89() #/ 6+/,+",# <$#M(6$#. 2+ 45# 3*- #L#13$* $+/ 3$+",($$+/ 45# 0#-#:'+" "* ,(#"#" $+ *6$()+%(&" '# -#$$#"+- %*" %*",#"('*/ ,*'*/ $*/ 6$*45#/ '# $+ 3$+",($$+ 6+/#. /&$*+45#$$*/ 45# "#%#/(,#"7 N'#1O/. 35#'#" %-#+- "5#H*/ 6$*45#/. /(#13-# 45# #/,*/ /# '#<("+" '#":,-*;'#;+$)P";6$*45#;'#;$+;3$+",($$+;6+/#7

N3$(%+"'*;$+;0#-#"%(+;/*6-#;$+;3$+",($$+ /.K83/8.6789-68:;< #$;-#/5$,+'*;#/=

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 24: Libro Symfony2 Apendice Twig

!"#$%&'($'%)*'+,)'-./#"0!1 23'2&45 67(52)*'+,)'-./6 10

!1 7,%$8 '.'9,%#10:%&'($'%!1 2&47,%$8 10

!1 7,%$8 $%&'2&.4%#10

;*<=:%&'($'%;>*<=

!"#)))#"0!1 2&47,%$8 10

!"#$%& "$ '(&)"* +,*$* -". /&0&1 0&$+*$,%&12 0&-& /&3 *4*-/(& *( '(&)"* '.'9,% %* (# /(#$+,((##$+*3,&325/"*%*15"+,(,6#35"$#5$&+#0,7$5-8150&$0,1#9

!"#?(#4%5#.&5'@9$$.%&25#5./9.2&'25#5%&#2A9.B(,2&'25#"0!1 7,%$8 '.'9,%#10:%&'($'%!1 2&47,%$8 10

!1 7,%$8 '.'9,% 6:%&'($'%6 10

!"#C(+7.D&#52#E9242&#9'.,.F(@#B(@.(7,25#"0!1 7,%$8 '.'9,%#10GH2@'(#42,#4I(J !! %H2@'()'.'9,% 00!1 2&47,%$8 10

!1 7,%$8 '.'9,% 6GH2@'(#42,#4I(J#6 K#%H2@'()'.'9,% 10

!"#$%$"%&'(")(*'%+"%$&'($%$*$,)(&"()'-(.)'/0"-:&1 '(&)"*1 %* (# /(#$+,((# '#1* +#-',;$ /"*%*$ ,$0(",3 0&$+*$,%&12 )"* 1* -&1+3#38$ 1,*-/3* )"*(# /(#$+,((# <,4# $& %*=,$# *( '(&)"*> ?-#@,$# )"* (# /(#$+,((# '#1* %*=,$* "$ +A+"(& /&3 %*=*0+& /#3#+&%#15(#15/8@,$#19

!"#7(52)*'+,)'-./#"0;LMG:CNOP#*'+,=

;*'+,=

;*2(4=

;+2'(#*''EQ2A9.BRS:%&'2&'QCTE2S#$%&'2&'RS'23'>*'+,U#$*(@52'R9'HQVS#>=

;'.',2=!1 7,%$8 '.'9,%#10:9E%&W#,(5#+2X%@25#%H2@'(5#T#,%5#+2X%@25

E@2$.%5!1 2&47,%$8 10;>'.',2=

;,.&8#*@2HRS25'.,%5)$55S#@2,RS5'T,25*22'S#'TE2RS'23'>$55S#>=

;>*2(4=

;7%4T=

!1 7,%$8 $%&'2&.4%#10!1 2&47,%$8 10

;>7%4T=

;>*'+,=

B, #<&3# "$# /(#$+,((# <*3*%# %* 7(52)*'+,)'-./ . $& %*=,$* *( 0&$+*$,%& %*( '(&)"* '.'9,%2 1*"+,(,6#38 *( 0&$+*$,%& %*=,$,%& *$ (# /(#$+,((# 7(52)*'+,)'-./> C1A )"* /"*%*1 1,-/(,=,0#3 (# /(#$D+,((# E%@'(4()*'+,)'-./25/&3)"*5*(5+A+"(&5)"*5%*=,$*5*15*(5-,1-&5)"*5*(5%*5(#5/(#$+,((#5'#1*9

!"#E%@'(4()*'+,)'-./#"0!1 23'2&45 67(52)*'+,)'-./6 10

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 25: Libro Symfony2 Apendice Twig

!" #$%&' &%()*(+,%-".

/01234-%5*6)4-,*$-,74/8012

!9-:::-9.!" *(,#$%&' ".

!"#" $% &$%'()$$% &%()4&)%:0);$:)<+= *) +,- )'.$,/- ,' 0$"+,- $$%#%1" )+)>$% ."' *, &2"&)"."'(-')1"34*-4*)5,-4,()$)6%'1"4-*(-4(7(,$"4-'48-641-$4+,-41-9)'-4$%4&$%'()$$%40%*-:

;) +,)-2-* ,()$)6%2 -$ ."'(-')1" 1-$ 0$"+,- 1-9)')1" -' $% &$%'()$$% 0%*- &-2" (%#0)<' %=%1)2 #>*."'(-')1"*3 &,-1-* ?%.-2 ,*" 1- $% 9,'.)@' ?46*()@A: A-'(2" 1- ,' 0$"+,-3 -*(% 9,'.)@' "0()-'--$4."'(-')1"41-4-*-4#)*#"40$"+,-4-'4$%4&$%'()$$%40%*-B

!9-&%()4&)%:0);$:)<+=-9.!" *B)*(,C D#4C*:0);$:)<+=D ".

!" #$%&' )+)>$%-".

E%()4&)%-F !! ?46*()@A ..

!" *(,#$%&' ".

!" #$%&' &%()*(+,%-".

/012E%()4&)%/8012

!9-:::-9.!" *(,#$%&' ".

C?"2% -$ (7(,$" +,- #,-*(2% $% &>5)'% .2-%1% ."' $% &$%'()$$% &%()4&)%:0);$:)<+= -* E%()4&)% F

*-5,)1" 1-$ ."'(-')1" 1-$ 0$"+,- )+)>$% -' $% &$%'()$$% 0%*-: D"2 (%'("3 -$ (7(,$" *-2> E%()4&)% F

E>?%(G-$4C-;*H%6*C-%5*6)4C-I-$%C-;*H%6*C-?6*&+%C:

E% 9,'.)@' ?46*()@A -* )1-%$ &"2 -F-#&$" &%2% $%* 6"'%* $%(-2%$-* 1- $%* &>5)'%*3 /% +,- $% &$%'()$$%0%*- &,-1- 1-9)')2 $"* ."'(-')1"* ."#,'-* 1- -*% 6"'% / -$ 2-*(" 1- &$%'()$$%* 2--#&$%6%2$"* " %#G&$)%2$"*4."'4',-8"*4."'(-')1"*:

!"#$%&%'()*+,"&,-+)$")%*+,*",&+.,/&+0#".H'% #)*#% &$%'()$$% '" &,-1- ."'(-'-2 1"* 0$"+,-* ."' -$ #)*#" '"#02-: ;) +,)-2-* #"*(2%2 -$."'(-')1" 1- ,' 0$"+,- 8%2)%* 8-.-*3 ,()$)6% $% 9,'.)@' #$%&'@A &%*%'1" ."#" &%2>#-(2" -$ '"#G02-41-$40$"+,-:

!9-&%()4&)%:0);$:)<+=-9.!" *B)*(,C D#4C*:0);$:)<+=D ".

!" #$%&' )+)>$%-".E%()4&)%!" *(,#$%&' ".

!" #$%&' &%()*(+,%-".

/012!! #$%&'@D)+)>$%DA ../8012

!9-:::-9.!" *(,#$%&' ".

I' $% &$%'()$$% %'(-2)"23 -$ (7(,$" +,- *- #,-*(2% -' $% 8-'(%'% 1-$ '%8-5%1"2 J-()+,-(% /)+)$*2K.")'.)1- ."' -$ (7(,$" +,- *- #,-*(2% ."#" &%2(- 1- $"* ."'(-')1"* J-()+,-(% /012K: !"#" $"* 1"*

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 26: Libro Symfony2 Apendice Twig

!"#$%#&'"( ("# &)*+,%(- '%.&#% %, /+,"0 '%, 1,"2*% !"!#$% 3 *$&,45+," '%(6*7( '%#$0" '% ,"( !"#$%#&8'"(9)0+!&+(9+9,+9.*#!&:# &$%'()*;

!"#$%"$&'()&*+,-<=&) 6%0>&$% +#&'+0 1,"2*%( '%#$0" '% "$0"( 1,"2*%(- (&# &>6"0$+0 (* #?>%0" #& %, #&/%, '% 60"8.*#'&'+' '%, +#&'+>&%#$"; @+ 6,+#$&,,+ 1+(% +#$%0&"0 '%.&#% *# ("," 1,"2*% '%+!,+"-% 6+0+ $"'"(,"( !"#$%#&'"( '% ,+( 6A)&#+(; B&# %>1+0)"- %# *#+ +6,&!+!&:# =%1 0%+, 6*%'% (%0 >A( &#$%0%(+#$%+C+'&09>A(91,"2*%(9'%#$0"9'%,91,"2*%960&#!&6+,9'%9!"#$%#&'"(D

./0&12,34!5$3!6"70/89:;<=>?@A04!5$B

94!5$B

94,1-B

95,!104!!CD,E#"FGH=%+!,+!D>IC,H0'%+!,+!GH!,J!K4!5$L0'41M2,!G#!NDOH0KB

9!"!$,B.P &$%'( !"!#$%0P8=#C%+Q0$1205,R%M,20%N,M!120I0$%205,R%M,2

CM,'"%2.P ,+-&$%'( P89K!"!$,B

9$"+(04M,NGH,2!"$%23'22H0M,$GH2!I$,24,,!H0!IC,GH!,J!K'22H0KB

9K4,1-B

9&%-IB

.P &$%'( '%+!,+"-%0P8

91M!"'$,B

.P &$%'( CM"+'"C1$0P8

92,'!"%+B9K2,'!"%+B

.P ,+-&$%'( P8

.P &$%'( 2,'#+-1M"%0P8

912"-,B9K12"-,B

.P ,+-&$%'( P8

9K1M!"'$,B

.P ,+-&$%'( P8

9K&%-IB

9K4!5$B

@"( 1,"2*%( +#&'+'"( (% '%.&#%# '% ,+ >&(>+ ."0>+ 2*% ,"( 1,"2*%( #"0>+,%(; B& ,+ 6,+#$&,,+ $&%#%>*!E" !:'&)"- 6*%'%( +C+'&0 %, #">10% '%, 1,"2*% F*#$" + ,+ %$&2*%$+ .P ,+-&$%'( P8- 6+0+ ,"!+8,&5+09>A(9.A!&,>%#$%9%,9.&#+,9'%9!+'+91,"2*%D

./0&12,34!5$3!6"70/8

./03330/8

9&%-IB

.P &$%'( '%+!,+"-%0P8

91M!"'$,B

.P &$%'( CM"+'"C1$0P8

92,'!"%+B9K2,'!"%+B

.P ,+-&$%'( CM"+'"C1$0P8

.P &$%'( 2,'#+-1M"%0P8

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!""

Page 27: Libro Symfony2 Apendice Twig

!"#$%&'!("#$%&'

)* &+%,-./0 #&/1+%"2$.3*4

!("25$/-&'

)* &+%,-./0 /.+5&+$%.3*4

!(,.%6'

!(758-'

!"#$ %&'($ )*$%#+**$ ,'-+%' &%$ '"#.&/#&.$ 0123 45"+/$ '% *$ 6&' *$" )57+%$" /8%#+'%'% &%$ 98%$).+%/+)$* ,' /8%#'%+,8" : 8#.$ 98%$ "'/&%,$.+$; <' '"#$ -8.=$> "+ *$ )*$%#+**$ /.+5"/5.9758-95:$;?'.',$@,'@*$@%&'($@)*$%#+**$@4$"'>@)&','@&#+*+9$.@*8"@%&'(8"@4*86&'"@'%@('9@,'*@4*86&' /.+5&+$%.A

)<3/.+5"/5.9758-95:$;3<4)* &=5&+%# >,"#&9758-95:$;> *4

)* ,-./0 5$51-.3*4?.+5"/5.)* &+%,-./0 *4

)* ,-./0 @2$+/$@"-3*4

!7A')) ,-./0B>5$51-.>C 44!(7A'

)<39993<4)* &+%,-./0 *4

)* ,-./0 #&/1+%"2$.3*4

!7D'E1$F+&#3#.8.#!(7D'

)<39993<4)* &+%,-./0 *4

B+% '=4$.78> *$ $)*+/$/+C% D'4 )&',' #'%'. 8#.$" )57+%$" '")'/+$*'" 6&' %8 &#+*+9$% *$ =+"=$ '"E#.&/#&.$ $ ,8" /8*&=%$" ).8)&'"#$ )8. *$ )*$%#+**$ 4$"'; !"#' )&',' "'. '* /$"8 )8. 'F'=)*8 ,' *$)8.#$,$>@%8.=$*='%#'@*$@)57+%$@=5"@'")'/+$*@,'*@"+#+8@D'4;

)<[email protected]"%"9758-95:$;3<4)* &=5&+%# >,"#&9758-95:$;> *4

)* ,-./0 /.+5&+$%.3*4

!7A'G"3.H&25"3%&-3%I"!(7A'

!%$J'

)<39993<4!(%$J'

)* &+%,-./0 *4

G$.$ ,'-+%+. "& ).8)+$ '"#.&/#&.$ ,' /8%#'%+,8"> *$ )*$%#+**$ @.25"%"9758-95:$; 8)#$ )8. '"#$4*'/'.,+.'/#$='%#' '* ($*8. ,'* 4*86&' /.+5&+$%.> %8 ?$/+'%,8 &"8 ,' *8" 4*86&'" +%#'.+8.'" @2$+/$@"-: #&/1+%"2$. ,'@*$@)*$%#+**$@4$"';

!"#"$%&'()&$*+&%'3$ '#+6&'#$ )* &=5&+%# *4 $,=+#' /&$*6&+'. 'H).'"+C% (5*+,$ ,' 1D+7 /8=8 %8=4.' ,' *$ )*$%#+**$4$"'; !"#8 )'.=+#' )8. 'F'=)*8 &#+*+9$. '* 8)'.$,8. #'.%$.+8 )$.$ '*'7+. *$ )*$%#+**$ /8% *$ 6&' =8"E#.$.@&%@*+"#$,8@,'@'*'='%#8"A

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 28: Libro Symfony2 Apendice Twig

!" #$%#&'( )*+,)&#(-+).*/+%/ 0 12,(%/')-3%.2-%4,51 6 1%/72/-3%.2-%4,51 "8

!" #$ %&$'( )# $& '*+",- +).*/+%/ #. %9:#/ $'. #$#0#-1'. .# 02#.1(&- +'- 2-& *$&-1"$$& 32# 4#(#)&)# $& *$&-1"$$& 2,(%/')-3%.2-%4,55 !" $& '*+",- %&$# ;/2(# .# 21"$"6& $& *$&-1"$$& %/72/-3%.2-%4,5

7&08"9- .# *2#)# 21"$"6&( )"(#+1&0#-1# #$ %&$'( )# 2-& %&("&8$# *&(& "-)"+&( #$ -'08(# )# $& *$&-:1"$$&;8&.#<

!<=(#=3#9#'/='#=2/=*2/&%,22/=/'.,&,(%9/')9-3%.2-%4,5=<8!" (#% :(:/9,)=> ! 1%,*)16 1/'.,&,(%9/')91 8 "8

!" #$%#&'( :(:/9,)-%,*) ? 1-3%.2-%4,51 "8

!<=(#=3#9#'/='#=2/=*2/&%,22/=%,#&'/-3%.2-%4,5=<8!" (#% :(:/9,)=> ! 1%,*)16 1%,#&'/1 8 "8

!" #$%#&'( :(:/9,)-%,*) ? 1-3%.2-%4,51 "8

! "#$%&$ '( )# *($+&,- ./0 '( 12&3 $& #1"32#1& !" #$%#&'( "8 )".*'-# )# 2- =2-+"'-&0"#-1' 1':

)&%>& 0?. &%&-6&)'5 @)#0?. )# "-)"+&( #$ -'08(# )# 2-& *$&-1"$$&/ &4'(& 1&08"9- *2#)#. "-)"+&(2-&;+'$#++",-;)#;*$&-1"$$&.5;7A"B;21"$"6&;$&;*("0#(&;*$&-1"$$&;32#;#C".1&<

!" #$%#&'( @1*9,.#9/-3%.2-%4,51A 1(#5:&'/-3%.2-%4,51A 1%#9+#9/-3%.2-%4,51B "8

D(&+"&. & #.1& 4#(#-+"& )"-?0"+& .#$#+1"%&/ #$ ."1"' A#8 )# 2- *#(",)"+' *')(>& *'( #E#0*$' 21"$"6&($&;."B2"#-1#;#.1(&1#B"&;*&(&;$&;*$&-1"$$&;32#;02#.1(&;$&.;-'1"+"&.<

!" #$%#&'( @

1+/%#5)9,/C1 ?=&)%,+,/-+/%#5)9,/ ? 1-3%.2-%4,51A

1(#++,)&C1 ?=&)%,+,/-(#++,)& ? 1-3%.2-%4,51A

1&)%,+,/-3%.2-%4,51

B "8

F0&B"-& 32# $& -'1"+"& 32# .# 02#.1(& *#(1#-#+# & $& .#++",- ,&%#9&/+,)&/2 G & $& +&1#B'(>&/.#9,+/5 !" #C".1# 2-& *$&-1"$$& $$&0&)& +/%#5)9,/C/.#9,+/-3%.2-%4,5/ 7A"B $& 21"$"6& +'0' 8&:.# )# $& *$&-1"$$& 32# 02#.1(& $& -'1"+"&5 !" -' #C".1#/ 7A"B 82.+& G 1(&1&(? )# 21"$"6&( $& *$&-1"$$&(#++,)&C,&%#9&/+,)&/2-3%.2-%4,55 !" 1&0*'+' #C".1# #.& *$&-1"$$&/ .# 21"$"6& $& *$&-1"$$& B#-9(":+& &)%,+,/-3%.2-%4,55

!"#$%&%'()%*+,-./%'.+$(&H& 4#(#-+"& )# *$&-1"$$&. *#(0"1# (#21"$"6&( B(&-)#. +&-1")&)#. )# +,)"B' #-1(# *$&-1"$$&. ."0"$&(#.5H& (#21"$"6&+",- 4'("6'-1&$ *#(0"1# #C1(&#( &32#$$&. *&(1#. )# +,)"B' 32# .# (#*"1#- #- %&("&. *$&-:1"$$&./;."-;'8$"B&(;&;32#;2-&.;4#(#)#-;)#;'1(&.5

F0&B"-& 32# $& *'(1&)& G %&("&. *?B"-&. "-1#("'(#. )# 2- ."1"' A#8 02#.1(&- 2- $".1&)' )# #$#0#-:1'.<

!<=*)9%/'/-3%.2-%4,5=<8!" #$%#&'( 17/(#-3%.2-%4,51 "8

!" 72)+D +)&%#&,')="8

E3FGH;#9%/(='#(%/+/'/(EI3FG

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 29: Libro Symfony2 Apendice Twig

!" #$% $#&%'()*+),&-'(.(,(-)"/

0123!! $#&%'(4'*'56$ //07123

083!! $#&%'(4,&-.%*8.*$+ //0783

!9)444)9/!" &+,#$% "/

!" &+,:6$.; "/

!9)%&.*&+'&-41'<64'=*>)9/!" &?'&+,- @:(-&41'<64'=*>@ "/

!" :6$.; .$+'&+*,$)"/

01A3B#&%'(-)%&.*&+'&-071A3

!" #$% $#&%'()*+)%&.*&+'&-)"/

0123!! $#&%'(4'*'56$ //07123

083!! $#&%'(4,&-.%*8.*$+ //0783

!9)444)9/!" &+,#$% "/

!" &+,:6$.; "/

!9).*5,(,41'<64'=*>)9/0CDBEFGHI)1'<63

01'<63

01&(,3

0<&'()1''8J&K5*LMNE$+'&+'JFO8&N).$+'&+'MN'&?'71'<6P).1(%-&'M5'#JQN)73

0'*'6&3R(-)$#&%'(-),&)6().*5,(,)R$%&<)S8-5<07'*'6&3

06*+;)1%&#MN&-'*6$-T(L(+U(,$-4.--N)%&6MN-'O6&-1&&'N)'O8&MN'&?'7.--N)73

071&(,3

0:$,O3

!9)444)9/

0(-*,&3

01V3B#&%'(-).&%.(+(-071V3

!" #$% $#&%'()*+).&%.(+(-)"/

0123!! $#&%'(4'*'56$ //07123

083!! $#&%'(4,&-.%*8.*$+ //0783

!9)444)9/!" &+,#$% "/

07(-*,&3

07:$,O3

071'<63

!"#$%&'%(%&'%) *#+ '$%+ "*#&',**#+ #&'%$,-$%+ +-& (./ 0,1%$%&'%+2 8$%'(,( / %&.*&+'&- 3%$%0#&0% *# "*#&',**# 4#+%) "%$- .*5,(, &- .',*,5# *# 3%$%&6,# 0% "*#&',**#+7 !0%(8+) *# "*#&',**# 8$%'(,((.%+'$# *#+ -1%$'#+ 0%+'#6#0#+) *# "*#&',**# %&.*&+'&- (.%+'$# *#+ -1%$'#+ $%6,%&'%+ / *# "*#&',**#.*5,(, (.%+'$#9*#+9-1%$'#+96%$6#&#+7

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 30: Libro Symfony2 Apendice Twig

! "#$%& '# $($ ')*#&#+,)%$- #. ,/')01 2345 6 37)0 '#. .)$8%'1 '# 1*#&8%$ #$ )'9+8),1 #+ .%$ 8&#$".%+8)..%$: ;$8% #$ .% ,.%<# '# .% &#(8).)=%,)/+ >1&)=1+8%.? .1,%.)=%& !"#$#% '# ,/')01 @(A $)@).%&#$#+B')*#&#+8#$B".%+8)..%$:

C+% <#= .1,%.)=%'1- #D8&%# #. ,/')01 ,1@E+ A ,&#% (+% +(#<% ".%+8)..% $/.1 ,1+ #$# ,/')01 F#+ #$8##G#@".1-B.%B+(#<%B".%+8)..%B$#B..%@% !"#$%&'()$*!($+",H?

-./!"#$%&'()$*!($+",/.0-1 2'3 '243$%/"5/'243$%#/10

6)78-- '243$%($"$9!' 006:)78

6;8-- '243$%(&4#<3";<"'5 006:;8

-./(((/.0-1 45&2'3 10

IJ$#&<% K(# #+ .% ".%+8)..% %+8#&)1& $# (8).)=% .% <%&)%J.# '243$%# ,1@1 +1@J&# '# .% ,1.#,,)/+ '#1*#&8%$BK(#B&#,1&&#B#.BJ(,.#:B;.B&#$81B'#B,/')01B#$B)'9+8),1B%.B'#B.%$B".%+8)..%$B%+8#&)1&#$:

! ,1+8)+(%,)/+- &#*%,81&)=% .%$ ".%+8)..%$ 1&)0)+%.#$ %L%')#+'1 .% $)0()#+8# #8)K(#8% -1 "5<!9&4

10?

-./;'3$%&%()$*!($+",/.0-1 4=$45&# >?%#4()$*!($+",> 10

-1 ?!'<@ <'5$45"&'/10

6)A8B243$%#/&4#$%<%&%#6:)A8

-1 "5<!9&4 >!"#$%&'()$*!($+",> 10

-1 45&?!'<@ 10

-./34<"45$4#()$*!($+",/.0-1 4=$45&# >?%#4()$*!($+",> 10

-1 ?!'<@ <'5$45"&'/10

6)A8B243$%#/34<"45$4#6:)A8

-1 "5<!9&4 >!"#$%&'()$*!($+",> 10

-1 45&?!'<@ 10

-./<"9&%&()$*!($+",/.06CDBEFGHI/)$*!8

6)$*!8

-./(((/.0

6%#"&48

6)J8B243$%#/<43<%5%#6:)J8

-1 "5<!9&4 >!"#$%&'()$*!($+",> 10

6:%#"&48

6:?'&K8

6:)$*!8

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"!

Page 31: Libro Symfony2 Apendice Twig

!" #$%&'#$" !" #$%&'() "* %()*'+# ,#($-. ,# '(" /*"($%**" #* )0,%1. ,# )'"*&'%#- .$-" /*"($%**"%(,%)"," ).2. /"-32#$-.4 5678 #( #* 2%62. /'($. #( #* &'# #6)-%9"6 !" #$%&'()

+&#,-.(/01-2&0-3#4+5"* 6#:%()*'%-3:$.,.:#*:)0,%1.:,#:*":/*"($%**" &#,-.(/4

!" /*"($%**" %()*'%," $%#(# "))#6. " $.,"6 *"6 ;"-%"9*#6 ,# *" /*"($%**" #( *" &'# 6# %()*'+#4 567 /.-#<#2/*.8 )'"(,. *" /*"($%**" &#,-.(/ 6# %()*'+# ,#($-. ,# 6/7-.(.8 $%#(# "))#6. " )'"*&'%#- ;"-%"=9*#:,#:*":/*"($%**" 6/7-.(.4

>?%1 /#-2%$# ).($-.*"- 2#,%"($# *"6 /"*"9-"6 )*";#6 3#-1 + /$&8 " &'@ ;"-%"9*#6 /'#,#( "))#,#-*"6:/*"($%**"6:%()*'%,"64:A%:(.:&'%#-#6:&'#:"))#,"(:":(%(1'(":;"-%"9*#8:%(,7)"*.:2#,%"($# /$&8B

!9500059*:1;<=>)7-.,57)%#)$-),:?1;<

!" #$%&'() +&#,-.(/01-2&0-3#4+ /$&85"*

C.2. "D.-" *" /*"($%**" &#,-.(/ (. $%#(# "))#6. " (%(1'(" ;"-%"9*# ,# *" /*"($%**" /-%()%/"*8 6')0,%1.:(.:E'()%.(":/.-&'#:(.:#F%6$#:'(":).*#))%0(:**"2"," />)7-., 6.9-#:*":&'#:/'#,":%$#-"-4

G2/#,%- #* "))#6. " $.,"6 *"6 ;"-%"9*#6 (. #6 "*1. ).2H(8 /#-. 6% *. #6 -#6$-%(1%- #* (H2#-. ,# ;"=-%"9*#6 " *"6 &'# /'#,# "))#,#- *" /*"($%**" %()*'%,"4 I"-" #**.8 ",#236 ,# /$&88 6# '$%*%J" *" /"*"9-"-#6#-;"," 3#-1 /"63(,.*# '( "--"+ "6.)%"$%;. ).( *"6 ;"-%"9*#6 &'# 6# /"6"( " *" /*"($%**" %()*'%,"B

!9500059*:1;<=>)7-.,57)%#)$-),:?1;<

!" #$%&'() +&#,-.(/01-2&0-3#4+ 3#-1 ! +/>)7-.,+@5/>)7-., * /$&85"*

A% &'%#-#6 /"6"- 2')D"6 ;"-%"9*#68 /'#,# -#6'*$"- %($#-#6"($# )-#"- #* "--"+ "6.)%"$%;. /-%2#-. #%(,%)"-:,#6/'@6:6%2/*#2#($#:6':(.29-#B

!9500059*!" ,)- (.-/,5A ! +/>)7-.,+@5/>)7-.,B +-#-'&/+@ +000+ * "*

:1;<=>)7-.,57)%#)$-),:?1;<

!" #$%&'() +&#,-.(/01-2&0-3#4+ 3#-15(.-/,5/$&85"*

K* '6. ,# 3#-1 (. 60*. #6 H$%* /"-" -#6$-%(1%- #* "))#6. " *"6 ;"-%"9*#68 6%(. &'# #6 %2/-#6)%(,%9*#/"-" &'# *" #$%&'#$" !" #$%&'() "* /'#," E'()%.("- #( *"6 "/*%)")%.(#6 ?#9 -#"*#64 A% .96#-;"6*"6 /*"($%**"6 .-%1%("*#68 ;#-36 &'# )"," '(" **"2" ,# E.-2" ,%E#-#($# " 6' ).*#))%0( ,# .E#-$"6B #(6/7-.(. 6# **"2" (),-.%.(.,8 #( 7)%#)$-), 6# **"2" 7)%#)$-), + #( %#'(.( 6# **"2" %)7%.$.,4C.2. *" /*"($%**" &#,-.(/ #6/#-" &'# *" ).*#))%0( 6# **"2# />)7-.,8 (. ;" " E'()%.("- 9%#( ,#($-.,#:(%(1'(":/*"($%**"4

!" 6.*')%0( ).(6%6$# #( '$%*%J"- *" /"*"9-" -#6#-;"," 3#-1 /"-" )"29%"- #* (.29-# ,# *" ;"-%"9*# +"<'6$"-*.:"*:&'#:'$%*%J":*":/*"($%**":%()*'%,"B

!956/7-.(.01-2&0-3#459*!" )C-)$(, +D.,)01-2&0-3#4+ "*

!" D&/%E %/$-)$#(/5"*

:1;<=>)7-.,5(),-.%.(.,:?1;<

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 32: Libro Symfony2 Apendice Twig

!" #$%&'() *&#+,-(./0,1&/,2#3* 2#,0 ! *.4)5,-+*67()+,-%-(-+ 8 "8

!" )$(9&.%: "8

!;75)%#)$,)+/0,1&/,2#37;8!" )<,)$(+ *9-+)/0,1&/,2#3* "8

!" 9&.%: %.$,)$#(.7"8

=0>?@4)5,-+75)%#)$,)+=A0>?

!" #$%&'() *&#+,-(./0,1&/,2#3* 2#,0 ! *.4)5,-+*675)%#)$,)+ 8 "8

!" )$(9&.%: "8

!;7%#'(-(/0,1&/,2#37;8=BC@DEFGH70,1&?

=0,1&?

!;7///7;8

=-+#()?

=0I?@4)5,-+7%)5%-$-+=A0I?

!" #$%&'() *&#+,-(./0,1&/,2#3* 2#,0 ! *.4)5,-+*67%)5%-$-+ 8 "8

=A-+#()?

=A9.(J?

=A0,1&?

!"#$%&%'()%*+,-%+./%)(!"#" $%&'(' &") *+ ,'-')&.+ (' /*+)0.**+$1 *+ '0.2%'0+ !" #$%&'() "8 0+#3.4) /'-#.0' '* %$" ('&%+*2%.'-5'6/-'$.7)589*.(+5('5:;.<5&"#"5)"#3-'5('5*+5/*+)0.**+5.)&*%.(+=

!" 4.5 .4)5,-7#$7.4)5,-+7"8

!" #$%&'() .4)5,-/,#K. LL *()+,-%-(-* M

*()+,-%-(-/0,1&/,2#3* 6 *.4)5,-/0,1&/,2#3* "8

!" )$(4.5 "8

>* &7(.<" +)0'-."- .)&*%?' *+ /*+)0.**+ ()+,-%-(-/0,1&/,2#3 /+-+ *+$ "@'-0+$ ('$0+&+(+$ ? *+ /*+)A0.**+ .4)5,-/0,1&/,2#3 /+-+ &%+*2%.'- "0-" 0./" (' "@'-0+= B+$ ("$ /*+)0.**+$ /"(-9) +&&'('- + *"$(+0"$5('5*+5"@'-0+5#'(.+)0'5*+58+-.+3*' .4)5,-=

! "#$%&$ '( )# *($+&,- ./0 '( 12&3 *+ '0.2%'0+ !" #$%&'() "8 0+#3.4) /'-#.0' &")0-"*+- $%

&"#/"-0+#.')0" &%+)(" *+ /*+)0.**+ .)&*%.(+ )" '6.$0'= >) /-.#'- *%<+-1 *+$ /+*+3-+$ -'$'-8+(+$#3$.5) 1#++#$3 .)(.&+) 2%' $. *+ /*+)0.**+ .)&*%.(+ )" '6.$0'1 $' .<)"-' &"#/*'0+#')0' *+ '0.2%'0+!"7#$%&'()7"8C

!" +), +)%%#.$7L7///7"8

!" #$%&'() *&-,)5-&N* O7+)%%#.$7O */0,1&/,2#3* #3$.5)71#++#$37"8

D. *+ 8+-.+3*' +)%%#.$ @%'$' )%.$.1#-1 :;.< 3%$&+ *+ /*+)0.**+ **+#+(+&-,)5-&N)%.$.1#-/0,1&/,2#3= D. *+ ')&%')0-+1 *+ .)&*%?'E $. )" *+ ')&%')0-+1 $' .<)"-+ '$0+ '0.A2%'0+ !"7#$%&'()7"8 ?5)"5$'5/-"(%&'5).)<F)5'--"-=

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 33: Libro Symfony2 Apendice Twig

!"# $"%"&'"# !"#$%& '!((!#" ()&)* +*,%-+'#) .-#/0 ()#$-1# ()% *02&') () %" $%"*/+%%"3 4#/0 )# 2-5+2$0'/"*/)6,-"*(06"()27#6()6+*,%-+'6%"6$%"*/+%%"68-+)')#6,0*/'0%"'6%"#69"'+"&%)#68-)6#)6%)6$"#"*:

)* !#+,-.& /,01&%0,2/ 34(&++!$#43 /561',517!"/ !"#$%&4'!((!#"4*8

)* !#+,-.& /,01&%0,2/ 34(&++!$#43 /561',517!"/ !"#$%&4'!((!#"4$#,94*8

)* !#+,-.& /,01&%0,2/ 34(&++!$#43 /561',517!"/ !"#$%&4'!((!#"47!16 )

/+$1!:0+!$#&(/; 1%-&< /1!1-,0%&(/; =0,(& 8 *8

)* !#+,-.& /,01&%0,2/ 34(&++!$#43 /561',517!"/ !"#$%&4'!((!#"47!16 )

/+$1!:0+!$#&(/; 1%-&< /1!1-,0%&(/; =0,(& 8 $#,94*8

;<-"%2)*/)= /"2&+1* ! "!#$%# &' (! )'#*%+, -./ &' 01%2= $-)()# +*(+,"' 9"'+"# $%"*/+%%"# $"'" 8-)

>?+< %"# 9"5" $'0&"*(0 #),-)*,+"%2)*/)3 !" $'+2)'" $%"*/+%%" 8-) )@+#/" #) +*,%-5) 5 )% ')#/0 #)+<*0'"*:

)* (&1 (&++!$#444>45554*8

)* (&1 +01&"$%!04>45554*8

)* !#+,-.& ?

/,01&%0,2/ 34+01&"$%!043 /561',517!"/<

/,01&%0,2/ 34(&++!$#43 /561',517!"/<

/,01&%0,561',517!"/

@ *8

A+ )* )% ,B(+<0 "*/)'+0' %" #),,+B* )# &+$#$'!0 5 %" ,"/)<0'C" )# A$,(0= >?+< /'"/" () )*,0*/'"'%" $%"*/+%%" ,01&%0,2A$,(0561',517!"3 A+ )@+#/) )#" $%"*/+%%"= #) +*,%-5) 5 #) +<*0'" )% ')#/03 A+*0 )@+#/)= #) ')$+/) )% $'0,)#0 $"'" %" $%"*/+%%" ,01&%0,2&+$#$'!0561',517!"3 A+ /"2$0,0 )@+#/)=#) +*,%-5) %" $%"*/+%%" ,01&%0,561',517!"3 A+ /"2$0,0 )@+#/+)'" )#/" $%"*/+%%"= >?+< 20#/'"'C" -*)''0'3

D"'" )9+/"' )#/) E%/+20 )''0'= ,02&+*" )% !#+,-.&2E%/+$%) ,0* %"# $"%"&'"# ,%"9) !"#$%& '!((!#":

)* (&1 (&++!$#444>45554*8

)* (&1 +01&"$%!04>45554*8

)* !#+,-.& ?

/,01&%0,2/ 34+01&"$%!043 /561',517!"/<

/,01&%0,2/ 34(&++!$#43 /561',517!"/<

/,01&%0,561',517!"/

@ !"#$%&4'!((!#"4*8

!"#$%&'(%$&>?+< +*,%-5) (),)*"# () F+%/'0#= F-*,+0*)#= )/+8-)/"# 5 0$)'"(0')#3 G0 0&#/"*/)= #+ ()#"''0%%"# -*""$%+,",+B* ,02$%)."= #)<-'"2)*/) /)*('7# 8-) ,')"' /-# $'0$+"# )@/)*#+0*)#3 A) ()F+*) ,020 )@H/)*#+B*6,-"%8-+)'6)%)2)*/068-)6"2$%C)6%"#6,"'",/)'C#/+,"#6062).0')6)%6F-*,+0*"2+)*/06()6>?+<3

!"#69)'#+0*)#627#6'),+)*/)#6()6>?+<6()F+*)*6#+)/)6/+$0#6()6)@/)*#+0*)#:

I ",$A0,=6$)'2+/)*6()F+*+'69"'+"&%)#6<%0&"%)#68-)6)#/7*6(+#$0*+&%)#6)*6/0("#6%"#6$%"*/+%%"#6()%"6"$%+,",+B*3

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 34: Libro Symfony2 Apendice Twig

! !"#$%"#$%#%&'(%)*#*+,&)(&%*-%#'),)#.%*%,),#'),-%#/%(#0+*-%*1/+#2345#/%#()#',+'1)'()*-1(()6#7+*0%'-8)(&%*-%#$+*#%981:)(%*-%$#)#()$#;8*01+*%$#/%#(+$#(%*.8)<%$#/%',+.,)&)01=*6

! &'(#)*%("#-)&>1?*#$%#%&'(%)*#'),)#.%*%,),#0+*-%*1/+$#/%*-,+#/%#()#'()*-1(()6#3@1.#1*0(8A%()$#$1.81%*-%$#;8*01+*%$B "))$*+')," +-%#." #%(/)"()" #0#-," 1"$,()" $"(2,6

! &*-),$"#-,)*$;+,&)*#(+$#0+*-%*1/+$#)*-%$#/%#&+$-,),(+$#'+,#')*-)(()6#3@1.#1*0(8A%#(+$$1.81%*-%$#;1(-,+$B #"1*)"-*3," #%(4,$)5,(#%6*(2" 6")," 6,&"'-)" ,/#"1," &%$!")" 7%*("7/%(5,(#%6," .,0/" -,(2)8" -%9,$" !,$2," $"9" $,1-"#," $,4,$/," /%$)" /)$*1)"2/" )*)-,"'11,$" '$-5,(#%6,6

! )"2"#$+*#()$#%-198%-)$#0+*#()$#98%#$%#0+*$-,8A%#()#(=.10)#/%#()$#'()*-1(()$6#3@1.#1*0(8A%#()$$1.81%*-%$#%-198%-)$B "')%,/#"1," +-%#." ,:),(6/" &*-),$" &%$" &$%!" *&" *!1%$)" *(#-'6,"!"#$%" $"9" /,)" /1"#,-,//" '/, A#()$#0+,,%$'+*/1%*-%$#%-198%-)$#/%#01%,,%#C,(6"')%,/#"1,",(6+-%#."#%-06D

! ),/)"#)(.8*+$#'),%0%*#;8*01+*%$#A#+-,+$#'),%0%*#%-198%-)$6#E%#%&'(%)*#'),)#%:)(8),%F',%$1+*%$#+#%(#0+*-%*1/+#/%#8*)#:),1)>(%6#5+$#-%$-$#98%#1*0(8A%#3@1.#$+*B #%(/)"()"6,&*(,6" 6*4*/*+-,+0" ,!1)0" ,4,(" ('--" %66" /"!,"/6

! %1,$")%$B#$+*#(+$#+'%,)/+,%$#98%#0+&>1*)*#:),1)>(%$#+#%F',%$1+*%$#'),)#+>-%*%,#+-,+:)(+,6#3@1.#1*0(8A%#(+$#$1.81%*-%$#+'%,)/+,%$B *(" */"#+'%,)/+,%$#(=.10+$#C"(6" ;;" %$" <<(%)" =" >D"#+'%,)/+,%$#/%#0+&'),)01=*#C??" ???" @?" A" A?" B" B?D"#+'%,)/+,%$#&)-%&G-10+$CC" D" E" F" G" EED#A#+-,+$#+'%,)/+,%$#CH" <" I" HH" J" K" LMD6

5)$ %F-%*$1+*%$ &G$ 0+&8*%$ %* ()$ )'(10)01+*%$ @%> $+* (+$ &)0,+$" ()$ :),1)>(%$ .(+>)(%$" ()$;8*01+*%$ A (+$ ;1(-,+$6 7,%), 8*) %-198%-) %$ ,%)(&%*-% 0+$-+$+ A /1;H01(" '%,+ ',G0-10)&%*-% *8*0)%$ *%0%$),1+ I)0%,(+6 5+$ -%$-$ A +'%,)/+,%$ 1*0(81/+$ %* 3@1. -)&>1?* $+* &G$ 98% $8;101%*-%$'),)#08)(981%,#)'(10)01=*#@%>"#'+,#(+#98%#-)&'+0+#%$#I)>1-8)(#0,%),#*8%:+$6

!"#$%&'(#)*#%+,'%#+(-"'-,$+(#%(./01'%/2J*-%$ /% %F'(10), /%-)(()/)&%*-% 0)/) 8*) /% ()$ %F-%*$1+*%$ )*-%,1+,%$" ,%$8(-) %$%*01)( 0+*+0%,0=&+ $% 0,%)* ()$ %F-%*$1+*%$ ',+'1)$ %* EA&;+*AK6 E)(:+ ()$ :),1)>(%$ .(+>)(%$ A ()$ &)0,+$" %(,%$-+#/%#%F-%*$1+*%$#$%#/%;1*%*#/%#8*)#&)*%,)#%$'%01)(#/%*-,+#/%#EA&;+*AK6

L*/%'%*/1%*-%&%*-% /%( -1'+ + 0)*-1/)/ /% %F-%*$1+*%$ 98% /%;1*)$" -+/)$ %(()$ $% 1*0(8A%* %*0()$%$ M2M /%*+&1*)/)$ !"#!$%&'$!% ()'(&*% +! ,-&.6 N$-)$ 0()$%$ I%,%/)* /% N9*25O:),(/*%(" $%0,%)* %* %( /1,%0-+,1+ N9*2FO:),(/*%(F /%( /0$+1! C98% I)A 98% 0,%), &)*8)(&%*-%D A $8 *+&>,%-%,&1*)#%* O:),(/*%(6

J$H 98% $1 981%,%$ /%;1*1, '+, %<%&'(+ 8*) %F-%*$1=* ',+'1) (()&)/) P)*-*6"6,/ %* %( /0$+1!Q&,$)"R'(6-, /%#-8#',+A%0-+#/%#EA&;+*AK"#/%>%$#0,%),#()#$1.81%*-%#0()$%B

FFS/$#FT'1%(FQ&,$)"R'(6-,FN9*2FO:),(/*%(FP)*-*6"6,/O:),(/*%(H181#-"// P)*-*6"6,/O:),(/*%( ,:),(6/ UN9*25O:),(/*%(

V

1'+-*# &'(#)*%( 2,)W"!,=>

V

$,)'$( X')*-*6"6,/XY

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 35: Libro Symfony2 Apendice Twig

!

!

!" #$ %"&#'%(' )# $* +$*,# "#$%$&'&()*+#(,)$-, ,# )#-%"#" &()(, $(, -%$&'(, . -/"+%("#, 0'(0%(,1+(2( ,# #30$%+*'4 24, *)#$*"&#5 6(' #$ 2(2#"&(1 #$ 7"%+( 28&()( (9$%:*&('%( #, .(#/'0(12 ;/#)#</#$<#=#$="(29'#=)#=$*=#3&#",%>"5

6(' 7$&%2(1 *"&#, )# 0()#' /&%$%?*' #,&* #3&#",%>" #" &/, 0$*"&%$$*, @A%:1 #, "#+#,*'%( *+&%<*'$*5 6*B'* #$$(1 /&%$%?* $* ,%:/%#"&# +("-%:/'*+%>"1 #30$%+*)* #" $* ,#++%>" !"#$%$"%&' (")*$+$'( "(,"+$-."( C04:%B"*=DDEF )#$=*08")%+#=GH

34'5567-,8$.67-,8$.9:0%)(;<$7()=

#>$.9(+#(,)$-,9?#$%$&'&()=

7%'))=4@?5-,AB8(;#'C?,&%(AD>$.A*+#(,)$-,A"#$%$&'&()*+#(,)$-,

#'.)=

E F ,'0(=4#>$.9(+#(,)$-, !

!"#$"%&'()*&+%"&'(I*, <*'%*9$#, :$(9*$#, ,(" *;/#$$*, ;/# #,&4" ,%#20'# )%,0("%9$#, #" &()*, $*, 0$*"&%$$*, )# $* *0$%B+*+%>"5 J/";/# ,/ /,( '#,/$&* 2/. +>2()(1 ,% *9/,*, )# $*, <*'%*9$#, :$(9*$#, 0/#)#, $$#:*' *0#"*$%?*'=#$='#")%2%#"&(=)#=$*=*0$%+*+%>"5

K% /&%$%?*, @A%: #" K.2-(".L1 $*, <*'%*9$#, :$(9*$#, ,# )#-%"#" #" #$ *'+M%<( )# +("-%:/'*+%>" :$(B9*$=)#=$*=*0$%+*+%>"H

34'5567-,8$.67-,8$.9:0%#>$.=

.%-G'%)=

$05?()#-)= HI

7'#(.-;$'J5-;J&(8(7#-= K,-<(&'&()K

K% /&%$%?*, @A%: #" /" 0'(.#+&( 6N6 %")#0#")%#"&#1 )#9#, *O*)%'$*, 2#)%*"&# #$ 28&()('&&L%-G'%12 )#$=(9P#&(=;/#=+'#*=#$=#"&('"(=)#=#P#+/+%>"=)#=@A%:H

664999M%-'&(; N ,(> D>$.JO-'&(;JP$%():)#(01JJQRSJJ9K65%',#$%%')K2T

M#>$. N ,(> D>$.J*,<$;-,0(,#1M%-'&(;2T

M#>$.EU'&&L%-G'%1K$05?()#-)KV HI2T

M#>$.EU'&&L%-G'%1K7'#(.-;$'J5-;J&(8(7#-KV K,-<(&'&()K2T

M#>$.EU'&&L%-G'%1K?#$%$&'&()KV ,(> "#$%122T

Q"* <#? )#-%"%)*,1 .* 0/#)#, /&%$%?*' #,&*, <*'%*9$#, :$(9*$#, )%'#+&*2#"&# #" +/*$;/%#' 0$*"&%$$*)#=$*=*0$%+*+%>"=+(2(=,%=-/#,#"=<*'%*9$#,="('2*$#,H

FW )(# -8(;#'4N49994W!

F34$05?()#-)4()4?,'4<';$'G%(4.%-G'%43!R05?()#-)= FF -8(;#'95;(7$- X4$05?()#-)46 HYY !!

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 36: Libro Symfony2 Apendice Twig

!" #$% &'()*$%+',+-,&'()*$%+'.,"/

!0,&'()*$%+'12$%13)#)&($,).,4-',5'%+'67),*7$6'7,0/!" +# &'()*$%+',88,&'()*$%+'12$%13)#)&($,"/

!0,999,0/!" )7.) "/

!0,999,0/!" )-3+# "/

!" )-3#$% "/

!"#" $%& '%()%*$+& ,$"*%$+& &+ -(%-%. ),/%$ 0/+ +$ (+&-" 1+ '%()%*$+&2 1+*+& &+( 3/)1%1"&" %$ +$+,)(&/ ."#*(+2 4%(% 0/+ ." &+ 4("1/53%. 3"$)&)".+& 3". $%& '%()%*$+& 1+ $% 4$%.-)$$%6 7.% */+.% 4(839-)3%:(+3"#+.1%1%:3".&)&-+:+.:1+;).)(:-"1%&:$%&:'%()%*$+&:,$"*%$+&:*%<":/.:4(+;)<":3"#=.>

0,'22:&$-#+*:&$-#+*9;<7(=+*>

*7$6'7.>

*7$6'7>

+<24).($.> ?@

&'()*$%+'12$%13)#)&($> A-$5)3'3).A

?@"(%:$%&:'%()%*$+&:,$"*%$+&:+&-8.:1)&4".)*$+&:+.:$%:4$%.-)$$%:%:-(%'A&:1+$:4(+;)<" *7$6'7>

!" .)( $#)%(',8,999,"/

B<24).($.> !! $#)%('92%)&+$ C,*7$6'79+<24).($. : ?DD //

!" #$% &'()*$%+',+-,&'()*$%+'.,"/

!" +# &'()*$%+',88,*7$6'79&'()*$%+'12$%13)#)&($ "/

!0,999,0/!" )7.) "/

!0,999,0/!" )-3+# "/

!" )-3#$% "/

!"#$%&B+,=. $% 1"3/#+.-%3)C. ";)3)%$ 1+ DE),2 $%& #%3("& &+ +#4$+%. 4%(% ,+.+(%( !"#$#% 1+ 3C1),"FDGH 0/+ &+ (+4)-+. /.% I "-(% '+5 +. $%& 4$%.-)$$%&6 J$ +<+#4$" #8& 3"#=. +& +$ 1+ $"& 3%#4"&1+:/.:;"(#/$%()">

E+-24( (;2)8F999F -'<)8F999F +38F999F 5'74)8F999F %)G4+%)38F999F :H

B) -/ 4$%.-)$$% 3".-)+.+ 1+3+.%& 1+ 3%#4"& 1+ ;"(#/$%()"2 1+;).+ /.% #%3(" 0/+ &+ +.3%(,/+ 1+,+.+(%( &/ 3C1)," FDGH6 K%(% 1+;).)( /.% #%3("2 /-)$)5% $% +-)0/+-% !" <'&%$ "/ 1+.-(" 1+ $%4("4)% 4$%.-)$$% 1".1+ &+ '%. % /-)$)5%(6 !%1% #%3(" 1+*+ -+.+( /. ."#*(+ =.)3" I2 "43)".%$#+.9-+2:/.%:$)&-%:1+:%(,/#+.-"&>

!" <'&%$ &'<2$I-$<6%)J,%)G4)%+3$J,5'7$%J,(+2$J,+3K "/

!0,999,0/!",)-3<'&%$,"/

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 37: Libro Symfony2 Apendice Twig

!" #$%&'#(' )& "* +*,'( -.&)& ,($%&$&' %*$%( ,/)#0( 1234 5 ,/)#0( )& 26#0 ,(+( $&,&7#%&8 9(':+*"+&$%& 7. ,/)#0( &7 +.5 ,($,#7(; ,(+( )&+.&7%'* &" 7#0.#&$%& &<&+-"( )& "* +*,'( =.& 0&$&'*&">,/)#0(>1234>)&>"(7>,*+-(7>)&>?('+."*'#(@

!" #$%&' %$#(')*'#+&,-.&,/0,&12'-.3$4'&-.51('-.126 "7

81*(05.59(,:;!! 51('.< 2,=$045)>5,?5>6 77;.*$#,:;!! *'#+&, 77;.12:;!! 12.<

2,=$045)*'#+&,677;.3$40,:;!! 3$4'& 77; !! &,/0,&12'.@ >&,/01&,2:;&,/01&,2;> A

>> 77.BC

!".,*2#$%&'."7

4(7 *'0.+&$%(7 )& "* +*,'( 7#&+-'& 7($ (-,#($*"&7; -(' "( =.& 7# $( #$)#,*7 7. A*"(' $( 7& +.&7:%'* $#$0B$ +&$7*<& )& &''('8 C*'* &7%*D"&,&' &" A*"(' #$#,#*" )& "*7 A*'#*D"&7; 7& .%#"#E* &" ?#"%'(2,=$045)68 C(' )&?&,%( .$* +*,'( $( %#&$& *,,&7( * "*7 A*'#*D"&7 )& "* -"*$%#""*8 F# "*7 $&,&7#%*7;-*7* ,(+( *'0.+&$%( * "* +*,'( .$* A*'#*D"& &7-&,#*" ""*+*)* D%'*5,?5 G,($ &" 0.#/$ D*<( -(')&"*$%&H8

I$* A&E ,'&*)*; "* +*,'( 7& -.&)& .%#"#E*' &$ "* +#7+* -"*$%#""* -'&?#<*$)( 7. $(+D'& ,($ DE,4=8J7K =.& "* +*,'( )& &7%& &<&+-"( 7& -.&)& &<&,.%*' ,($ "* #$7%'.,,#/$ !! DE,4=F%$#(')FFF6 77;%*">5>,(+(>+.&7%'*>&">7#0.#&$%&>&<&+-"(@

!" #$%&' %$#(')*'#+&,-.&,/0,&12'-.3$4'&-.51('-.126 "7

81*(05.59(,:;!! 51('<2,=$045)>5,?5>6 77;.*$#,:;!! *'#+&, 77;.12:;!! 12.<

2,=$045)*'#+&,677;.3$40,:;!! 3$4'& 77; !! &,/0,&12'.@ >&,/01&,2:;&,/01&,2;> A

>> 77.BC

!".,*2#$%&'."7

G'#+&,A !! DE,4=F%$#(')>*'#+&,>- 5&0,- >H'EI>6 77

J(,4412'EA !! DE,4=F%$#(')>$(,4412'E>- 5&0,- >K$&%L$.MI&,N>6 77

O,4I='*'A !! DE,4=F%$#(')>5,4,='*'>6 77

J>,($%#$.*,#/$>7&>+.&7%'*>&">,/)#0(>1234>0&$&'*)(>-('>&7%*>-"*$%#""*>26#0@

G'#+&,A 81*(05 59(,:;5,?5; *$#,:;*'#+&,; 12:;*'#+&,; 3$40,:;H'EI;

&,/01&,2:;&,/01&,2; BC

J(,4412'EA 81*(05 59(,:;5,?5; *$#,:;$(,4412'E; 12:;$(,4412'E; 3$40,:;K$&%L$

MI&,N; &,/01&,2:;&,/01&,2; BC

O,4I='*'A 81*(05 59(,:;5,?5; *$#,:;5,4,='*'; 12:;5,4,='*'; 3$40,:;; BC

F# =.#&'&7 '&.%#"#E*' "*7 +#7+*7 +*,'(7 &$ )#?&'&$%&7 -"*$%#""*7; -'#+&'( ,'&* .$* -"*$%#""* )&)#,*)*&L,".7#A*+&$%& * ,($%&$&' %()*7 "*7 +*,'(78 M+*0#$* =.& &7%* $.&A* -"*$%#""* 7& ""*+*051412$2,EFP5#4F5Q1R@

!S.051412$2,EFP5#4F5Q1R.S7!" #$%&' %$#(')*'#+&,-.&,/0,&12'-.3$4'&-.51('-.126 "7

81*(05.59(,:;!! 51('<2,=$045)>5,?5>6 77;.*$#,:;!! *'#+&, 77;.12:;!! 12.<

2,=$045)*'#+&,677;.3$40,:;!! 3$4'& 77; !! &,/0,&12'.@ >&,/01&,2:;&,/01&,2;> A

>> 77.BC

!".,*2#$%&'."7

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!""

Page 38: Libro Symfony2 Apendice Twig

!"#" $%&'&("# ")*#" '" +",#* !"#$%&' -./%#* -. $/" 0'"/%&''" ''"+"-" !%()"!)%*+)#,*)-./1 &+20*#%"30#&+.#*3'"30'"/%&''" 0).,.1"123*+)#,*)-./ +.-&"/%.3'"3.%&4$.%" 456.#$%7)6585

496!%()"!)%*+)#,*)-./69845 .#$%7) :0).,.1"123*+)#,*)-./: "360).,.1"123658

;%#<72= 44 0).,.1"123*!"#$%&:(%#<72:> )702> :?%3@:' 88

A$2,,.1%3= 44 0).,.1"123*!"#$%&:"$2,,.1%3:> )702> :B"7!C"6D@72E:' 88

F2,@G%(%= 44 0).,.1"123*!"#$%&:)2,2G%(%:' 88

6" 0"'"7#" #.8.#9"-" "3 &/-&," .' /*+7#. -. '" 9"#&"7'. 7":* '" 4$. 8. &+0*#%"/ '"8 +",#*8; <* .8*7'&="%*#&*34$.3.'3/*+7#.3-.3.8%"39"#&"7'.3,*&/,&-"3,*/3.'3-.3'"30'"/%&''"5

496!%()"!)%*+)#,*)-./69845 .#$%7) :0).,.1"123*+)#,*)-./: "36G%7#0,"7.%658

;%#<72= 44 G%7#0,"7.%*!"#$%&:(%#<72:> )702> :?%3@:' 88

A$2,,.1%3= 44 G%7#0,"7.%*!"#$%&:"$2,,.1%3:> )702> :B"7!C"6D@72E:' 88

F2,@G%(%= 44 G%7#0,"7.%*!"#$%&:)2,2G%(%:' 88

>& ./ '" 0'"/%&''" 0).,.1"123*+)#,*)-./ &/,'$?.8 +$,)"8 +",#*81 /* .8 /.,.8"#&* 4$. '"8 &+0*#%.8%*-"8 ,$"/-* 8@'* 9"8 " /.,.8&%"# $/"8 0*,"8; !"#" &+0*#%"# +",#*8 &/-&9&-$"'+./%.1 $%&'&(" '".%&4$.%" 456G7%#6585

496!%()"!)%*+)#,*)-./69845 G7%# :0).,.1"123*+)#,*)-./: .#$%7) !"#$%658

;%#<72= 44 !"#$%&:(%#<72:> )702> :?%3@:' 88

A$2,,.1%3= 44 !"#$%&:"$2,,.1%3:> )702> :B"7!C"6D@72E:' 88

F2,@G%(%= 44 !"#$%&:)2,2G%(%:' 88

A78.#9" ,@+* ")*#" '" +",#* 8. &+0*#%" -&#.,%"+./%. ./ '" 0'"/%&''"1 0*# '* 4$. 0$.-.8 $%&'&("#!"#$%&' ./ 9.( -. 0).,.1"123*!"#$%&' * G%7#0,"7.%*!"#$%&'; >& /.,.8&%"8 &+0*#%"# 9"#&"8 +"2,#*813&/-&,"3%*-*838$83/*+7#.838.0"#B/-*'*83,*/3,*+"85

45 G7%# :0).,.1"123*+)#,*)-./: .#$%7) !"#$%>6<%)%(>6)2H)%658

C$"/-* 8. &+0*#%" $/" +",#* &/-&9&-$"' %"+7&D/ 8. 0$.-. #./*+7#"# +.-&"/%. '" 0"'"7#" #.8.#29"-" "35

496!%()"!)%*+)#,*)-./69845 G7%# :0).,.1"123*+)#,*)-./: .#$%7) :!"#$%: "36G.2,1658

;%#<72= 44 G.2,1&:(%#<72:> )702> :?%3@:' 88

A$2,,.1%3= 44 G.2,1&:"$2,,.1%3:> )702> :B"7!C"6D@72E:' 88

F2,@G%(%= 44 G.2,1&:)2,2G%(%:' 88

E%&'&("/-* '" /*%",&@/ I32,G* '"8 +",#*8 -. $/" +&8+" 0'"/%&''" 0$.-./ ''"+"#8. ./%#. 8F; G' 8&2=$&./%. .:.+0'* +$.8%#" ,@+* +.:*#"# '" +",#* !"#$%&' 0"#" 0*-.# ,#."# H*#+$'"#&*8 .8%#$,%$#"2-*83,*/3%"7'"83IJK613'&8%"83-.3.'.+./%*83*3.%&4$.%"8 J1.KL5

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 39: Libro Symfony2 Apendice Twig

!"#$%&'&()(*+,-%.',%/&0#"1!2 .)345 3).65785.94*:#4*;$*4&(5:#<)'54:#%&65:#&(= 21

>&86$%#%?6*@A!! %&65B(*C)$'%7D%*E%D= 11A#8).*@A!! 85.94* 11A#&(@A!! &(#B

(*C)$'%785.94*=11A#<)'$*@A!! <)'54 11A !! 4*;$*4&(5#F D4*;$&4*(@A4*;$&4*(AD G

DD 11#HI

!2#*8(.)345#21

!2 .)345 C&')785.94*:#4*;$*4&(5:#<)'54:#%&65:#&(= 21

>%4I

>%(I!! 85.94*#B 3)6&%)'&J* 11>H%(I

>%(I!! K+*'C,3).65785.94*:#4*;$*4&(5:#<)'54:#%&65:#&(= 11>H%(I

>H%4I

!2#*8(.)345#21

!2 .)345 (&<785.94*:#4*;$*4&(5:#<)'54:#%&65:#&(= 21

>(&<I

>+%4580I!! 85.94*#B 3)6&%)'&J* 11>H+%4580I

!! K+*'C,3).65785.94*:#4*;$*4&(5:#<)'54:#%&65:#&(= 11

>H(&<I

!2#*8(.)345#21

!2 .)345 &%*.785.94*:#4*;$*4&(5:#<)'54:#%&65:#&(= 21

>'&I

!! K+*'C,(&<785.94*:#4*;$*4&(5:#<)'54:#%&65:#&(= 11

>H'&I

!2#*8(.)345#21

!"#$%&'()*)+&,$)%$&-.,/01)23)&-#$1(0%$/#+&,#2&*/-)$)23)+&)+3$(,3($%+&/23)$2%+&43%50%+6&0/+3%+78

!"#358%)3%5,-%.',%/&0#"1!2 &.654% D$%&'&()(*+,-%.',%/&0D )+#C54.$')4&5#21

>%)9'*I

!! C54.$')4&5,C&')7D85.94*D: %4$*: DL5+MD= 11

!! C54.$')4&5,C&')7D)6*''&(5+D: %4$*: DN)43O)#PM4*JD= 11

!! C54.$')4&5,C&')7D%*'*C585D= 11

>H%)9'*I

>$'I

!! C54.$')4&5,&%*.7D85.94*D: %4$*: DL5+MD= 11

!! C54.$')4&5,&%*.7D)6*''&(5+D: %4$*: DN)43O)#PM4*JD= 11

!! C54.$')4&5,&%*.7D%*'*C585D= 11

>H$'I

9) "),"#6 :$%,/%+ % 0% '%0%5$% $)+)$;%*% )+6 '()*)+ ,%15/%$ 0% )+3$(,3($% *) 0#+ -#$1(0%$/#+ +/21#*/-/,%$ )0 ,<*/:# *) 0% '0%23/00%= >0 3$(,# ,#2+/+3) )2 ,%15/%$ )0 2#15$) *) 0% 1%,$# %0 /1'#$?3%$0%&@&)0):/$&+/)1'$)&)0&1/+1#&2#15$)8

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 40: Libro Symfony2 Apendice Twig

!"#$%&'($'%)*'+,)'-./#"0!1 23%+ 45'.,.6(678)*'+,)'-./4 .+9%3' 2.,(#(8#$(+9%#10

:'(;,7<

!! 2%3+5,(3.%)$(+9%=4&%+;374> '357> 4?%8@4A 00

!! 2%3+5,(3.%)$(+9%=4(97,,.6%84> '357> 4B(3$C(#D@37E4A 00

!! 2%3+5,(3.%)$(+9%=4'7,72%&%4A 00

:F'(;,7<

!"#)))#"0

!1 23%+ 45'.,.6(678)*'+,)'-./4 .+9%3' .'7+#(8#$(+9%#10

:5,<

!! 2%3+5,(3.%)$(+9%=4&%+;374> '357> 4?%8@4A 00

!! 2%3+5,(3.%)$(+9%=4(97,,.6%84> '357> 4B(3$C(#D@37E4A 00

!! 2%3+5,(3.%)$(+9%=4'7,72%&%4A 00

:F5,<

! "#$%& '# ()# $*+ ,)- ./01#$2 1%$ ,%3&*$ +* $)#1#+ )/0104%&$# ,5$ ()# "%&% 6#+#&%& !"#$#% 3*,)+#$'# 37'06* 89:;< =)%+'* 1% 17603% %),#+/%2 $# )/0104%+ >)+30*+#$ '# 9?06 * !"#$#% '# "1%+/011%0+31)0'*$@3*+@1%@#/0()#/% !1#.&$,567#10<

!"#$%&';*$ >01/&*$ $*+ 3*+ ,)3A% '0>#&#+30% 1%$ #B/#+$0*+#$ ,5$ )/0104%'%$ #+ 1%$ "1%+/011%$ 9?06< ;*$ >01C/&*$ $# ")#'#+ %"103%& $*D&# 3)%1()0#& #B"&#$07+ E510'% '# 9?062 +*&,%1,#+/# E%&0%D1#$< F1 +*,CD&# '#1 >01/&* $0#,"&# $# #$3&0D# '#/&5$ '# 1% #B"&#$07+2 $#"%&5+'*1* 3*+ )+% D%&&% E#&/03%1 G - /%,CD0G+@")#'#+@0+31)0&@%&6),#+/*$H

!"#2.,'3%#8.&#(3/5+7&'%8#"0!! H(3.(;,7#G#2.,'3% 00

!"#2.,'3%#$%&#(3/5+7&'%8#"0!! H(3.(;,7#G#2.,'3%=(3/5+7&'%I>#(3/5+7&'%JA 00

9G3+03%,#+/#2 )+ >01/&* '# 9?06 +* #$ ,5$ ()# )+% >)+307+ '# I8I % 1% ()# $# "%$% 3*,* "&0,#&%&6),#+/*@1%@#B"&#$07+@$*D&#@1%@()#@$#@%"103%@#1@>01/&*H

FF#!!#H(3.(;,7#G#2.,'3%#00#78#7K5.H(,7&'7#(L7$*% 2.,'3%=H(3.(;,7AM

FF#!!#H(3.(;,7#G#2.,'3%=(3/5+7&'%I>#(3/5+7&'%JA#00#78#7K5.H(,7&'7#(L7$*% 2.,'3%=H(3.(;,7>#(3/5+7&'%I>#(3/5+7&'%JAM

(%)*+,&-."#$%&'-)+-/01.&+02;*$ >01/&*$ #+ J-,>*+-K $0#,"&# $# '#>0+#+ '#+/&* '# %16)+% #B/#+$07+ "&*"0%< J06)0#+'* 3*+ #1,0$,* #L#,"1* '# 1%$ $#330*+#$ %+/#&0*&#$2 0,%60+% ()# '0$"*+#$ '# 1% $06)0#+/# #B/#+$07+ E%3M%11%,%'% N'.,.6(678H

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"!

Page 41: Libro Symfony2 Apendice Twig

!!"#$%!&'()*!+,-$./0'*12-!3456!78.-*#5)*!9.5251/1-#78.-*#5)*:(;(%2/## 9.5251/1-#78.-*#5)* -8.-*1# <3456=78.-*#5)*

>

('?25% ,'*%.5)* 6-.@/A-BC

>

$-.'$* D'.5251/1-#DE

F

F

! "#$%&$'("&)$ *+ ,'+*%-( "),# .+/&$&- '$ $'+0# /&1%-# 11(,(.# 2)*65.'1 2'+ "(1"'1( 1( 1#$3&%'..+ '$( "(.+$( .+ %+4%#5 6$ 7-&,+- 1'3(- (8(.+ +1 ,9%#.# 6-.G52.-$#BC +$ 1( "1(*+ .+ 1( +4%+$*&)$:;.+"1(-(;+1;$'+0#;/&1%-#<

!!"#$%!&'()*!+,-$./0'*12-!3456!78.-*#5)*!9.5251/1-#78.-*#5)*:(;(%2/## 9.5251/1-#78.-*#5)* -8.-*1# <3456=78.-*#5)*

>

('?25% ,'*%.5)* 6-.G52.-$#BC

>

$-.'$* /$$/HB

D2)*65.'1D IJ *-4 <3456=G52.-$=K-.;)1BL.;5#M D2)*65.'1DCM

CE

F

('?25% ,'*%.5)* 6-.@/A-BC

>

$-.'$* D'.5251/1-#DE

F

F

61 ,9%#.# 6-.G52.-$#BC .+0'+10+ '$ (--(: (*#"&(%&0# "#$ %#.#* 1#* /&1%-#* .+/&$&.#* 7#- 1( +4%+$=*&)$5 >( "1(0+ .+ "(.( +1+,+$%# .+1 (--(: +* +1 $#,?-+ .+1 /&1%-#5 6*%+ $#,?-+ +* +1 2'+ %+$.-@*2'+;+*"-&?&-;+$;1(*;71($%&11(*;7(-(;'%&1&A(-;+1;/&1%-#;:;.+?+;*+-;B$&"#;+$;1(;(71&"("&)$5

C(.( /&1%-# *+ .+"1(-( "#$ 1( "1(*+ 3456=G52.-$=K-.;)15 D' 7-&,+- (-3',+$%# +* +1 $#,?-+ .+ 1("1(*+ .#$.+ *+ +$"'+$%-( +1 /&1%-# E$#-,(1,+$%+ L.;5#F : +1 *+3'$.# (-3',+$%# +* +1 $#,?-+ .+1,9%#.# 2'+ &,71+,+$%( +1 /&1%-#5 G(-( /&$(1&A(- 1( "-+("&)$ .+1 /&1%-#H (8(.+ '$ ,9%#.# 2)*65.'1BC+$;1(;"1(*+;.+;1(;+4%+$*&)$;+;&$"1':+;+$;*';&$%+-&#-;%#.(;1(;1)3&"(;.+1;/&1%-#<

!!"#$%!&'()*!+,-$./0'*12-!3456!78.-*#5)*!9.5251/1-#78.-*#5)*:(;(%2/## 9.5251/1-#78.-*#5)* -8.-*1# <3456=78.-*#5)*

>

('?25% ,'*%.5)* 6-.G52.-$#BC

>

$-.'$* /$$/HB

D2)*65.'1D IJ *-4 <3456=G52.-$=K-.;)1BL.;5#M D2)*65.'1DCM

CE

F

('?25% ,'*%5)*"2)*65.'1BLN/2)$C

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 42: Libro Symfony2 Apendice Twig

!

"#$%"& '$"(#&)*+,(-"./

0

1%2(34 5%&4$3-& 6#$7,8#).

!

"#$%"& 9%$3(3:,:#'9/

0

0

!" #$%&'$ ($)*&'+,- .'" &/,-.- .'" 0%",$- 1%'&#$' '1 '" 2("-$ 3'4#$'1%5+ - 2($%(6"'7 1-6$' "( 8*'1' (#"%9( '" 0%",$- '+ "( #"(+,%""(: ;% '" 0%",$- ,(&6%/+ *,%"%<( #($=&',$-1> '1,-1 1' #(1(+ .'1#*/1 .'"2("-$?

;;<'"4;=%1-&;>5#"$,?%&:(#;@A36;BC$#&'3-&;D$3(3:,:#'BC$#&'3-&E1F14(,'' D$3(3:,:#'BC$#&'3-& #C$#&:' G@A36HBC$#&'3-&

!

;;<EEE

1%2(34 5%&43-&<(-&63$%:)*+,(-"I *1,",8#$"-JI *1,",8#$"-KI<EEE.

!

"#$%"& '$"(#&)*+,(-"./

0

0

@+( 2'< %&#"'&'+,(.( "( "5)%9( .'" 0%",$-> A 1% "( '4,'+1%5+ D$3(3:,:#' '1,= (9,%2(.( '+ "( (#"%9(B9%5+>CA(C#*'.'1C*,%"%<($C'"C+*'2-C0%",$-C'+C9*("8*%'$C#"(+,%""(C.'C"(C1%)*%'+,'C&(+'$(?

!! +,"3,2(#<L<(-&63$%: 00

!"#$%&'()*+,"'-(#%(./.;% *,%"%<(1 DE%) '+ *+ #$-A'9,- FGF %+.'#'+.%'+,'> #*'.'1 .'0%+%$ "( 0*+9%5+ FGF .'" 0%",$-.'+,$- .'" &%1&- !"#$%& 8*' $'+.'$%<( "(1 #"(+,%""(1: H'1#*/1> (I(.' '" +*'2- 0%",$- 9-+ '" &/,-.-,::M3($#").?

;;<EEE*(-,:#" N &#A @A36HO-,:#"HM3(#'P'$#8)HHQRSHHE9;1(,&$3((,'9./

*$A36 N &#A @A36HB&+3"-&8#&$)*(-,:#"./

5%&4$3-& (-&63$%:)*+,(-". !

"#$%"& '$"(#&)*+,(-"./

0

*$A36TU,::M3($#")9(-&63$%:9I &#A @A36HM3($#"HM%&4$3-&)9(-&63$%:9../

JK-$(CA(C#*'.'1C*,%"%<($C'"C+*'2-C0%",$-C'+C9*("8*%'$C#"(+,%""(?

!! +,"3,2(#<L<(-&63$%: 00

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 43: Libro Symfony2 Apendice Twig

!"#" $% !"#$%&'( &' #%(&)* ()& #&$*&#+," -'"$.+''"/0 &/ 1&2%# *&3+$+# .%*%/ '%/ 3+'.#%/ -#%-+%/ 4%1%15.%*%/ &/.6.+4%/ &$ )$" 4'"/& ")7+'+"#8 9+ -%# &2&1-'% &/" 4'"/& /& ''"1" !"#$#%&%'(0 &' $)&:%3+'.#%;/&;*&3+$+#<";"/<=

))*+$&('*!"#$#%&%'(,-.-+$&(( !"#$#%&%'( /

-01$#+ ("&"#+ 203+"#43 $435#"0%678&$49: /

9'"093 ("9$'3678&$49:;

<

<

))*(+9#-"*=0'*9'3%'9#>&*-$&3"#$$&(7$4&%'9 ? 3'@ A@#5BC4&%'9BD#$'(E("'F6BBGHIBB,J)-$&3"#$$&(J:;

7"@#5 ? 3'@ A@#5BK38#943F'3"67$4&%'9:;

7"@#5LM&%%D#$"'96J$435#"0%JN3'@ A@#5BD#$"'9BD03+"#436J!"#$#%&%'(OO$435#"0%J::;

!"#"$%#&'()*&+,'(-./0>?+@ "-'+4" &' 1&4"$+/1% *& &/4"-& $% /A'% " '"/ :"#+"B'&/0 /+$% ."1B+5$ "' #&/)'."*% *& .%*%/ '%/3+'.#%/8 !%# ."$.%0 /+ .)/ 3+'.#%/ @&$&#"$ 4%1% #&/-)&/." 4A*+@% C>DE0 .&$*#6/ ()& "-'+4"# ."1B+5$&';3+'.#% 9&@ -"#";&:+."#;-#%B'&1"/=

// 8&9#&1$'*P*F#B2#$"94*P 9&@ <<

FG"*+# &' 3+'.#% 9&@ /+&1-#& ()& ).+'+4&/ .) 3+'.#% &/ "'@% .&*+%/%8 !%# &/% >?+@ -&#1+.& +$*+4"# ()&'" #&/-)&/." @&$&#"*" -%# )$ 3+'.#% &/ /&@)#" H -%# ."$.%0 ()& *&B& 1%/.#"#/& ."' 4)"' &$ '" -'"$.+''"8!"#";&''%0;"G"*&;'";%-4+A$ #(B(&2' "';*&3+$+#;&';3+'.#%=

))*K3*QEF243ER-01$#+ 203+"#43 5'"D#$"'9(6:

/

9'"093 &99&E6

JF#B2#$"94J ?M 3'@ SA@#5BD#$"'9BT'".4%67".#(N JF#D#$"94JN &99&E6

J#(B(&2'J ?M &99&E6J."F$J:

::N

:;

<

))*K3*-94E'+"4(*UVU*#3%'-'3%#'3"'(7"@#5LM&%%D#$"'96

JF#B2#$"94JN

3'@ A@#5BD#$"'9BD03+"#436JT#(KW"'3(#43'(OOF#B2#$"94JN &99&E6

J#(B(&2'J ?M &99&E6J."F$J:

:

:;

!%# %.#" -"#.&0 /+ ()+&#&/ ()& >?+@ "-'+()& &' 1&4"$+/1% *& &/4"-& "' :"'%# ()& -"/" "' 3+'.#%0 "G"I*&;'";%-4+A$ -9'B'(+&-'=

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 44: Libro Symfony2 Apendice Twig

!!"#$"%&'()$&*+,-./0 (,$01/)$ 2314/.135678

9

531,5$ :55:&7

;'/<(/.15); => $3? @A?/2<4/.135<B31C)D7E1C/6F ;'/4/.15);F :55:&7

;+53<360:+3; => :55:&7;C1'.;8

88F

8G

H

!!"#$"+5)&301)6"IJI"/$D3+3$D/3$136E1?/2K>:DD4/.1357

;'/<(/.15);F

$3? A?/2<4/.135<4,$01/)$7;B/6#L13$6/)$36MM'/<(/.15);F :55:&7

;+53<360:+3; => :55:&7;C1'.;8

8

8G

!"#$%&$%'()&%*(+,-.&/%)0("+$)$1)$%#(+%()'$)$2$.3.&/%!" #$"%&' .)$2/1,D ()#$*$(' +*%)&$'&,)*%) )- (),+-$+(' -$,.") .+&+ /%$"$0+&"' )* /*+ +."$1+1$2*3)4 &)+"5 !" ,'%$6' )- 7/) )* 6)0 () "+ #/*1$2* 615.3$788 ()4)&9+ :+1)& /-' () "+ #/*1$2*'-<615.3$788;7/);#/*1$'*+;4$)*;1'*;%'('-;"'-;$($',+-5

<+&+ /* ,)='& #/*1$'*+,$)*%'8 "+ #/*1$2* '-<615.3$78 )-.)&+ 1',' -)>/*(' +&>/,)*%' "+ 1'?($#$1+1$2* () 1+&+1%)&)- /%$"$0+(+ )* "+ 1+()*+ () %)@%' 7/) -) ") .+-+5 AB2,' -) ./)() ()%)&,$*+&"+ 1'($#$1+1$2* () 1+&+1%)&)- ()*%&' () /*+ ."+*%$""+ () C3$>D E+ &)-./)-%+ )- ,/F -$,.")8 F+ 7/)1/+*(' -) 1'*#$>/&+ )" )*%'&*' () )=)1/1$2* () C3$>8 /*+ () -/- '.1$'*)- )- .&)1$-+,)*%) )" !"#$%&'( ';1'($#$1+1$2*;();1+&+1%)&)-5

G-9 7/) .+&+ 7/) "'- #$"%&'- ./)(+* '4%)*)& )-%+ $*#'&,+1$2*8 -2"' )- *)1)-+&$' 7/) +11)(+* + "+1'*#$>/&+1$2* ()" )*%'&*' () )=)1/1$2* () C3$>5 <+&+ )""'8 +H+() "+ '.1$2* $33D6<3$N/5)$'3$1 +"()#$*$&;)";#$"%&'I

!!"#$"%&'()$&*+,-./0 (,$01/)$ 2314/.135678

9

531,5$ :55:&7

;.)$2/1,D; => $3? @A?/2<4/.135<B31C)D7E1C/6F ;.)$2/1,D;F :55:&7

;$33D6<3$N/5)$'3$1; => 15,3

88F

8G

H

!!"#$"+5)&301)6"IJI"/$D3+3$D/3$136E1?/2K>:DD4/.1357

;.)$2/1,D;F

$3? A?/2<4/.135<4,$01/)$7;O1/./D:D36MM.)$2/1,D;F :55:&7

;$33D6<3$N/5)$'3$1; => 15,3

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 45: Libro Symfony2 Apendice Twig

!

!"

!"#$%&#' ()*+,+-. "/ -0*+1) *"/ ,+/23)' 4. 5%" .6)3. 74(,)849 /" $.#. "/ "82)38) *" ":"-%-+08 -);()<$3+("3<$.3=("23)>

#$%&'()% *)%+('$,-./0(+12%3(4)%56%' 76%')4%)8 739*)4!

:

7&),(#(&9&()% ; 76%')4%)<=+6'>?94@6'-!"

46'$4% 5A1@'4*6%-739*)48 7&),(#(&9&()%!"

B

? 23.@&# *" /. @.3+.A/" 76%')4%) $%"*"# .--"*"3 . +8,)3(.-+08 -)() /. @"3#+08 *" BC+1D76%')4%)CCD2EFGHIE' /. -)*+,+-.-+08 *" -.3.-2"3"# %2+/+F.*. D76%')4%)<=+6'>?94@6'-!E' ) #+BC+1<#"<"#2=<":"-%2.8*)<"8<()*) !"#$% D76%')4%)<=(@J6A$+-!EG

!"#$%&#'(H.# ,%8-+)8"# *" BC+1 #)8 #+(+/.3"# . /)# ,+/23)#' $"3) #% ,+8./+*.* "# *+,"3"82"G I/ )A:"2+@) *" /)#,+/23)# "# (.8+$%/.3 "/ -)82"8+*) *" /.# @.3+.A/"#' (+"823.# 5%" /.# ,%8-+)8"# #" %2+/+F.8 $.3. 1";8"3.3 -)82"8+*)#G 7% 8)2.-+08 2.(A+&8 "# *+,"3"82"' 4. 5%" /.# ,%8-+)8"# 8%8-. #" .$/+-.8 #)A3"@.3+.A/"#<8+<"J$3"#+)8"#<4<#%<8)(A3"<#+"($3"<@.<#"1%+*)<*"<*)#<$.3&82"#+#>

:KL#$%&(M%L@(%L94+$56%')@LKB:: 5(1#$%&()%-! BB

:KL#$%&(M%L&)%L94+$56%')@LKB:: 5(1#$%&()%-94+$56%')N8L94+$56%')O! BB

)*'+#,&-."#$%&#'(-'#-/01.&#02!",+8+3 %8. ,%8-+08 *" BC+1 "8 74(,)849 "# (%4 #+(+/.3 . *",+8+3 %8 ,+/23)G H. K8+-. *+,"3"8-+."# 5%" .6)3. /. ,%8-+08 #" *",+8" "8 "/ (&2)*) +6'P$%&'()%@-! "8 @"F *" +6'P(*'64@-! 4 5%" /.,%8-+08 #" *"-/.3. -)8 /. -/.#" /0(+1P$%&'()%1Q6'?), "8 @"F *" /0(+1P(*'641Q6'?),G I/ #+1%+"8;2"<-0*+1)<(%"#23.<-0()<*",+8+3<%8.<,%8-+08<//.(.*. 5(1#$%&()%-!>

RRL@4&R>$S)%RH#64'9T$%,*6R/0(+R2U'6%@()%RV'(*(,9,6@2U'6%@()%WS?S&*9@@ V'(*(,9,6@2U'6%@()% 6U'6%,@ ./0(+12U'6%@()%

:

S$A*(& #$%&'()% +6'P$%&'()%@-!

:

46'$4% 9449X-

Y5(1#$%&()%Y ;= %60 ./0(+1P$%&'()%1Q6'?),-7'?(@8 Y5(P$%&()%Y!8

!"

B

S$A*(& #$%&()%L5(P$%&()%-!

:

RRLWWW

46'$4% 746@S$6@'9"

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 46: Libro Symfony2 Apendice Twig

!

"#$%&' (#)'*&+) ,-*./0-12

3

4-*#4) 5#*&%&6/6-758

!

!

!" #$ %&'(")' $*+",- .$/0+-,/123 !4+%1'45 #12 .$2$ $&,1+0,"($+-',- $# +6,1*1 *- #$ %&'(")' -'-#7+"2+171/*-'7-'7-#78&-72-7-2(/"9-'7-'7#$7.#$',"##$:

99:74'9;#"+)9<(-4*/=#)6%-9>?&,9@A*-)7&+)9B*&%&6/6-7@A*-)7&+)C"D"'%/77 B*&%&6/6-7@A*-)7&+) -A*-)67 E>?&,F@A*-)7&+)

3

99:CCC

"#$%&' (#)'&+):0&G#)'&+)1H"/4/0-*4+IJ H"/4/0-*4+KJ:CCC2

3

99:CCC

4-*#4) H4-7"#-7*/8

!

!

;'$ <-= "+.#-+-',$*$ #$ #)>"($ *- #$ %&'(")'3 4 2" #$ -?,-'2")' B*&%&6/6-7 -2,0 $(,"<$*$ -' #$$.#"($(")'374$7.&-*-27&,"#"=$/#$7-'7(&$#8&"-/7.#$',"##$7*-7#$72">&"-',-7+$'-/$:

33 0&F(#)'&+)12 !!

!"#$%&'()*%+,'%#-(#%(./.@- +$'-/$ 2"+"#$/ $ #12 %"#,/123 2" &,"#"=$2 AB"> -' &' ./14-(,1 CDC "'*-.-'*"-',-3 *-9-2 *-(#$/$/#$27%&'("1'-27(1'7-#7+6,1*1 /66G#)'*&+)12:

99:CCCH%+/6-4 L )-? >?&,FM+/6-4FG&%-7N7*-01FFOPQFFC59"%/)*&%%/7528

H*?&, L )-? >?&,F@)R&4+)0-)*1H%+/6-428

(#)'*&+) 0&F(#)'&+)12 3

99:CCC

4-*#4) H4-7"#-7*/8

!

H*?&,ST/66G#)'*&+)150&F(#)'&+)5J )-? >?&,FG#)'*&+)FG#)'*&+)150&F(#)'&+)5228

0-$%&'(12,3(#%(4"'5#+6'-(./.(4"'4,'-AB"> -2 &' ./14-(,1 +$',-'"*1 .1/ #12 +"2+12 (/-$*1/-2 *- !4+%1'45E C1/ -21 #12 *12 2- "',->/$'.-/%-(,$+-',-747.&-*-27&,"#"=$/7AB">7-'7,&27$.#"($("1'-27!4+%1'4572"'7-2%&-/=1E

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 47: Libro Symfony2 Apendice Twig

!" "#$%&'%() %&*#+,' -($./%& *.0 $('1+//" .%+/+2&- 34+5 (' %.$ 6-"6+"$ 6-"0(1%"$ 7879 :' /"$ $+;5.+('%($<(=(*6/"$<$(<$.6"'(<>.(</&<($%-.1%.-&<?(<?+-(1%"-+"$<?(</&<&6/+1&1+@'<($</&<$+5.+('%(A

!"#$%&'#(

!")!*+,-*.!/!!")&*&/%(!")!0*-',00*1(#))))$")!0*-',00*.'2,+$")3%-4#"(

$")'2,+(

7&-& +'$%&/&- /& /+#-(-B& ?( 34+5) ?($1&-5& " 1/"'& 1"' C+% $. 1@?+5" ?($?( /& ?+-(11+@'D%%6$AEE5+%D.#91"*EF&#6"%E34+5 0<5.G-?&/"<('<(/<?+-(1%"-+" 3%-4#"('2,+( ?(/<6-"0(1%"9

H 1"'%+'.&1+@') &#-( (/ !"#$%& !*+,-*.!/! 0 -(5+$%-& (/ '(&)*)'+,# " 1&-5&?"- &.%"*G%+1" ?( 1/&$($?(<34+5<1"'<(/<$+5.+('%(<1@?+5"A

56!/!

"%78,"%9#-&% 99:;<99.=(3%-4#"('2,+(0,>(?2,+(@8'#0#*4%".!/!=A

?2,+9@8'#0#*4%"BB"%+,1'%"CDA

H$(5I-&%( ?( +'?+1&- /& -.%& 1"--(1%& D&$%& (/ &-1D+J" @8'#0#*4%".!/! $(5I' /& ($%-.1%.-& ?( ?+-(1;%"-+"$ ?( %. 6-"0(1%"9 K+ /& -.%& '" ($ 1"--(1%&) '" $( 1&-5&-G '+'5.'& 1/&$( ?( 34+5 0 6"- %&'%") '"F.'1+"'&-G<'+'5.'&<6/&'%+//&9

H/ *&-5(' ?(/ '(&)*)'+,#) /"$ ?"$ (/(*('%"$ *G$ +*6"-%&'%($ 6&-& (/ 1"--(1%" F.'1+"'&*+('%" ?(34+5<$"'<(/<1&-5&?"-<?(<6/&'%+//&$<0<(/<('%"-'"<?(<(=(1.1+@'9

L&$ 6/&'%+//&$ ?( 34+5 '"-*&/*('%( $( 1-(&' (' &-1D+J"$) 6"- /" >.( $( .%+/+2& (/ 1&-5&?"-//&*&?" ?2,+9E#*4%"9F,0%1$1'%G9 K+ 1-(&$ /&$ 6/&'%+//&$ ?+'G*+1&*('%() ?(#($ .%+/+2&- (/ 1&-5&;?"- ?2,+9E#*4%"9H'",-+ 6&-& 6&$&- ?+-(1%&*('%( (/ 1"'%('+?" ?( /& 6/&'%+//& 34+5 (' .'& 1&?('&?(<%(M%"9

:/ 1&-5&?"- ?( 6/&'%+//&$ ?2,+9E#*4%"9F,0%1$1'%G ($6(-& 1"*" &-5.*('%" /& -.%& D&$%& (/ ?+-(1;%"-+" ?"'?( $( ('1.('%-&' /&$ 6/&'%+//&$9 N"' /& ($%-.1%.-& ?( ?+-(1%"-+"$ *"$%-&?& &'%(-+"-*('%()($%&<-.%&<($ 99:;<99.=(!0*-',00*1=A

56!/!

"%78,"%9#-&% 99:;<999.=(3%-4#"('2,+(0,>(?2,+(@8'#0#*4%".!/!=A

?2,+9@8'#0#*4%"BB"%+,1'%"CDA

I0#*4%" J -%2 ?2,+9E#*4%"9F,0%1$1'%GC99:;<99.=(!0*-',00*1=DA

O($6.,$) 1"'F+5.-& (/ ('%"-'" ?( (=(1.1+@' ?( 34+5 1"' /& 1/&$( ?2,+9K-3,"#-G%-') >.( ($6(-&1"*"<6-+*(-<&-5.*('%"<.'<1&-5&?"-<?(<6/&'%+//&$A

56!/!

"%78,"%9#-&% 99:;<999.=(3%-4#"('2,+(0,>(?2,+(@8'#0#*4%".!/!=A

?2,+9@8'#0#*4%"BB"%+,1'%"CDA

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 48: Libro Symfony2 Apendice Twig

!"#$%&' ( )&* +*,-./#$%&'.0,"&1213&45..678..9:;<"$)3,""$1:=>

!3*,- ( )&* +*,-.?)@,'#)4&)35!"#$%&'=>

!" #$%&'()#'$( *+ ", #",&+ +*,-.?)@,'#)4&)3 ',-./0% 1+(-/'+ /%*/#,( #$-$ &+2)%*$ 1,(3-+'($ )%,((,4 #$% ",& $1#/$%+& *+ #$%5/2)(,#/6% *+ 78/29 :3& ,*+",%'+ &+ +;1"/#,% #$% *+',""+ '$*,& ",&$1#/$%+&<*/&1$%/."+&9

78/2 4, +&'3 #$((+#',-+%'+ #,(2,*$ 4 #$%5/2)(,*$9 =>$(,? 1,(, (+%*+(/@,( )%, 1",%'/"",? #3(2,",#$%<+"<-0'$*$ "#$%+&4<"$3&5= 4<(+%*+(A@,",<#$%<+"<-0'$*$ '&)%&'5=B

AB<C<

'&DE,'&.#)F& ..678...9:;@&)%#';3*,-;",G;+*,-;HE3#"#$%&'9<C<:>

+*,-.HE3#"#$%&'II'&-,13&'5=>

!"#$%&' ( )&* +*,-./#$%&'.0,"&1213&45..678..9:;<"$)3,""$1:=>

!3*,- ( )&* +*,-.?)@,'#)4&)35!"#$%&'=>

!<"$)3,""$ ( !3*,-JK"#$%+&4<"$3&5:<"$)3,""$93*,-:=>

!F#%,-#L34" ( !<"$)3,""$JK'&)%&'5$''$25

:@$',$G"&M: (K :@$"#'M:N

:@$',$G"&O: (K :@$"#'O:

==>

&FC# !F#%,-#L34">

!" -0'$*$ "#$%+&4<"$3&5= +&1+(, #$-$ ,(2)-+%'$ ", ()', *+ ", 1",%'/"", #$% (+&1+#'$ ," */(+#'$C(/$ *+ 1",%'/"",& #$%5/2)(,*$ 1(+D/,-+%'+9 E$-$ +% +&'+ #,&$ ", 1",%'/"", &+ +%#)+%'(, +% +&+ -/&C-$<*/(+#'$(/$?<&$",-+%'+<>,4<F)+</%*/#,(<+"<%$-.(+<*+<",<1",%'/"",9

G%, D+@ #,(2,*, ", 1",%'/"",? 2+%+(, ",& 132/%,& #$% +" -0'$*$ '&)%&'5=9 = +&'+ -0'$*$ &+ "+1,&, #$-$ ,(2)-+%'$ )% ,((,4 #$% ",& D,(/,."+& F)+ +&',(3% */&1$%/."+& +% ", 1",%'/"",9 !" -0'$C*$ '&)%&'5= *+D)+"D+ */(+#',-+%'+ ", 1",%'/"", (+%*+(/@,*, H%$(-,"-+%'+ #6*/2$ I7:JK9 L,(,-$&'(,("$<1$(<1,%',"",?<2)3(*,"$<+%<)%,<D,(/,."+<$<)'/"/@,<)%,</%&'()##/6% &FC# *+<LIL9

J,& 1",%'/"",& *+ 78/2 ',-./0% */&1$%+% *+ )% -0'$*$ "",-,*$ %,1<"$25= F)+ /%'+(%,-+%'+ 5)%C#/$%, #$-$ '&)%&'5= 1+($ %$ *+D)+"D+ +" #$%'+%/*$ *+ ", 132/%, &/%$ F)+ "$ -)+&'(, */(+#',-+%C'+?<1$(<"$<F)+<%$<>,#+<5,"',<,M,*/(<%/%2N% &FC#B

!<"$)3,""$ ( !3*,-JK"#$%+&4<"$3&5:<"$)3,""$93*,-:=>

!<"$)3,""$JK%,1<"$25$''$25

:@$',$G"&M: (K :@$"#'M:N

:@$',$G"&O: (K :@$"#'O:

==>

L$( N"'/-$? 78/2 ',-./0% 1+(-/'+ #,(2,( 4 (+%*+(/@,( ", 1",%'/"", #$% )%, N%/#, /%&'()##/6%9 L,(,+""$? )'/"/@, +" -0'$*$ '&)%&'5= *+ 78/2? %$ *+ ", 1",%'/"",9 O%*/#, #$-$ 1(/-+( ,(2)-+%'$ ", ()',*+<",<1",%'/"",<4<#$-$<&+2)%*$<,(2)-+%'$<+"<,((,4<#$%<",&<D,(/,."+&<*+<",<1",%'/"",B

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!""

Page 49: Libro Symfony2 Apendice Twig

!"#$%&#'()* + !(,%&-./01$0/234*51(%**56(,%&37 5//582

395/%5:*0;3 +. 395*#/;37

395/%5:*0<3 +. 395*#/<3

==>

!"#$%&'()#*"+,-+,#."(#"+*,+,/,0'0%1#!"#$%&%'()"#$*+,%-."-%#$/,.).0*+$%)$#.1/.%+,%$234.1"$(*-*$2-%*-$%)$%+,"-+"$4%$%&%2/2.3+$4%$56.17

!(,%& + 10, ?,%&@A19%/#1)01(2!*#5$0/=>

!* 2)*#% ?,%&@A19%/#1)01( *4'.,% 2"'" #%1/+4" (*-8'%,-" /+ *--*9 (*-* 4%:.+.- %) ;*)"- 4% )*##.1/.%+,%#$"(2."+%#$4%$2"+:.1/-*2.3+7

< 5B(#0C"5407$.+4.2*$#.$#%$*().2*$*/,"'8,.2*'%+,%$%)$'%2*+.#'"$4%$%#2*(%$%+$,"4*#$)*#()*+,.))*#=$>/$;*)"-$("-$4%:%2,"$%# (/B0=

< 5B(#@/0*#5$7$.+4.2*$#.$#%$4%?%+$;");%-$*$2"'(.)*-$)*#$()*+,.))*#$4%$56.1$2*4*$;%0$@/%2*'?.*$#/$234.1"$:/%+,%=$A#,*?)%2%$%)$;*)"- (/B0 2/*+4"$%#,B#$4%#*--"))*+4"$)*$*().2*2.3+C(*-*$;%-$.+#,*+,8+%*'%+,%$)"#$2*'?."#$#.+$,%+%-$@/%$;*2.*-$)*$2*2D%=$>.$+"$%#,*?)%2%#+.+1E+$;*)"-C$#%$)%$*#.1+*$%)$;*)"-$4%$)*$"(2.3+ $0:B&=

< :5C0@(0)4*5(0@"*5CC7$%#,*?)%2%$)*$2)*#%$4%$)*$@/%$D%-%4*+$)*#$()*+,.))*#$2"'(.)*4*#=$>/;*)"-$("-$4%:%2,"$%# ?,%&@?0)4*5(0=

< "5"D07$.+4.2*$)*$-/,*$*?#")/,*$4%)$4.-%2,"-."$2*2D%$4"+4%$#%$1/*-4*+$)*#$()*+,.))*#2"'(.)*4*#=$>/$;*)"-$("-$4%:%2,"$%# E5*C0C$)"$@/%$#.1+.:.2*$@/%$56.1$+"$/,.).0*$+.+1/+*2*2D%=

< "D5/C0(7$)*$2"4.:.2*2.3+$4%$2*-*2,%-%#$@/%$/,.).0*+$)*#$()*+,.))*#=$>/$;*)"-$("-$4%:%2,"$%#B(E-F=

< $0:B&7$.+4.2*$#.$)*#$()*+,.))*#$2"'(.)*4*#$4%?%+$.+2)/.-$.+:"-'*2.3+$4%$4%(/-*2.3+=F"+2-%,*'%+,%C$#.$;*)% (/B0 #%$*G*4%$/+$'B,"4" @@(#G(/%1&2= *$)*#$2)*#%#$4%$)*#$()*+,.))*#(*-*$'"#,-*-$)"#$+"4"#$1%+%-*4"#=$>/$;*)"-$("-$4%:%2,"$%# E5*C0=

< #4(%)%H5(%#1C7$.+4.2*$@/B$"(,.'.0*2."+%#$#%$/,.).0*+$*)$2"'(.)*-$)*#$()*+,.))*#=$>/$;*)"-("-$4%:%2,"$%# -;C$@/%$*2,.;*$,"4*#$)*#$"(,.'.0*2."+%#=$5*'?.B+$(/%4%#$/,.).0*-$)"#$;*)"-%#< H"(,.'.0*$)"#$?/2)%# E#/ +"$2-%*+4"$)*$;*-.*?)% *##4 *$'%+"#$@/%$#%*$+%2%#*-."I$9 IH"(,.'.0*$%)$:.),-" /5,I=$J*-*$4%#*2,.;*-$,"4*#$)*#$"(,.'.0*2."+%#C$/,.).0*$%)$;*)"- J=

< C(/%"(@95/%5:*0C7$%#,*?)%2%$%)$2"'("-,*'.%+,"$4%$56.1$2/*+4"$/+*$;*-.*?)%$+"$%K.#,%=$>.;*)% E5*C0C$56.1$.1+"-*$%#,"#$%--"-%#$9$2"+;.%-,%$)*$;*-.*?)%$.+%K.#,%+,%$*)$;*)"- 1B**=$>.;*)% (/B0C$56.1$'/%#,-*$/+*$%K2%(2.3+$2*4*$;%0$@/%$%+2/%+,-*$/+*$;*-.*?)%$@/%$+"$%K.#,%=>/$;*)"-$("-$4%:%2,"$%# E5*C0=

!(,%& + 10, ?,%&@A19%/#1)01(2!*#5$0/7 5//582

3$0:B&3 +. (/B07

3C(/%"(@95/%5:*0C3 +. (/B07

3"D5/C0(3 +. 3K?L-F37

3"5"D03 +.M@@NOP@@63Q"5"D03

==>

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 50: Libro Symfony2 Apendice Twig

!"#$%&'()*+',$'-./0&$.1!"#$#%&' ()#* +,-"'. +, /-& &0$#1&1#2- 3456.-47 ,8 ".+&9:& 5,;.' 4 5<8 6<1#$ =/, /8&'$. +, 6.'5&#-+,0,-+#,-",> $&8 0$&-"#$$&8 8, 1&'*&- &/".5<"#1&5,-", 1.- $& !"#$%&'! ()!*+,? $& 1&1@A 4 ."'&8.01#.-,8 #50.'"&-",8 4& ,8"<- 0',1.-6#*/'&+&8 4 +#80.-,8 +, 6/-1#.-,8 4 6#$"'.8 ,B1$/8#9.8 1.5.!"#$%&? '()%& 4 #("*+%&C

2&$0*+34#5*6$D$ 1.50.'"&5#,-". +, ()#* 8, &;/8"& 5,+#&-", $&8 .01#.-,8 +, 1.-6#*/'&1#2- +,$ 8,'9#1#. #,-.C3456.-47 +,6#-, $&8 .01#.-,8 1.5/-,8 ,- ,$ &'1@#9. "!!/01*2-./01*2-.345) 4 +,80/A8 &E&+,&$*/-& .01#2- 0&'"#1/$&' 0&'& $.8 &'1@#9.8 "!!/01*2-./01*2-.6789345) 4 "!!/01*2-./

01*2-.6!(17345)C

FG1.-"#-/&1#2-G8,G5/,8"'&-G$&8G.01#.-,8G+#80.-#H$,8G4G8/8G9&$.',8G0.'G+,6,1".>

#,-.:

"'#18+0"!8:;;;;;;;;;;;<

="+86#85!)"#860)"++:;;<

0"0$8:;;;;;;;;;;;;;;;;>?8(*8)30"0$867-(>/#,-.

0$"(+8#:;;;;;;;;;;;;;;>?8(*8)30$"(+8#>

78='.:;;;;;;;;;;;;;;;;>?8(*8)378='.>

+#(-0#69"(-"=)8+:;;;;;<

"'#16(8)1"7:;;;;;;;;;;<

7,834#5*6$()#* #-1$/4, $& ,"#=/,"& @> 78='. >A 1.5. ,=/#9&$,-", +, $& 6/-1#2- 9"(67'5!%& +, IJIC F8:0/,+,8 9,' ,$ 1.-",-#+. +, 1/&$=/#,' 9&'#&H$,? $. =/, 6&1#$#"& 5/1@. $& +,0/'&1#2- +, $&8 &0$#1&1#.K-,8>

@>;78='.;*15=(8B78B9"(-"=)8;>A

3#- ,5H&'*.? ,$ 12+#*. &-",'#.' -. 6/-1#.-& 0.' +,6,1". ,- 3456.-47? 4& =/, $& ,"#=/,"& @> 78='.

>A -. ,8"< +#80.-#H$,C D8"& ,"#=/,"& 0,'",-,1, & $& ,B",-8#2- 78='. =/, 3456.-47 #-1$/4, 0,'. -.&1"#9& 0.' +,6,1".C F8: =/, &E&+, $& 1.-6#*/'&1#2- 1.'',80.-+#,-", 0&'& &1"#9&' ,8"& ,B",-8#2-? "&$1.5.G8,G,B0$#1&G,-G$&G8,11#2- -,.&!&,!*"/0,12&%&"0/,03,%&$+,0 L0<*#-&GMMNO +,$G&0A-+#1,GP>

C;"!!/01*2-./01*2-.345)+8(9-08+:

#,-.38D#8*+-1*378='.:

0)"++:;E,-.6FD#8*+-1*+6FD#8*+-1*6G8='.

#".+:

B @ *"58:;#,-.38D#8*+-1* A

9#4*#:;,"'+;&:#;,"3456.-47 1',& &/".5<"#1&5,-", 9&'#&8 9&'#&H$,8 *$.H&$,8 0&'& =/, ".+&8 $&8 0$&-"#$$&8 ()#* ",-K*&- &11,8. +#',1". & $.8 .H;,".8 5<8 #50.'"&-",8 +, $& &0$#1&1#2-C F ".+&8 ,$$&8 8, 0/,+, &11,+,'5,+#&-",G$&G9&'#&H$,G,80,1#&$ "!!C

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"!

Page 51: Libro Symfony2 Apendice Twig

! !""#$%&'()%*$%+"#$%&'%(&%#%(#)*+,-%#$%(#%).*-)*#,/0*#%(#1'%#2%#%2.3#%0%4'./)$*#(/5(/).6((/#7,$&" "(),"#%.489

! !""#,$-./"#$%&'%(&%#%(#&/(*-#$%#(/#*546:) ,$-./ %)#(/#/5(64/46:)#75*-#$%;%4.*#&/(% +(.$ %)%(#%).*-)* ,$& < 0!12$ %)#%(#%).*-)* "(),9

! !""#2$3.('+4"#$%&'%(&%#')#*,0%.*#4*)#.*$/#(/#6);*-+/46:)#$%(#4*).%=.*#$%#2%>'-6$/$8#?%*,.6%)%#(*#+62+*#1'%#%0%4'./)$* 5+6'278/$+9:2$3.('+4#3)%+$;+:< %)#')#4*).-*(/$*-8@)#(/#5-34.64/#2'%(%#'.6(6A/-2%#+32#(/#26>'6%).%#*546:) !""#.2$(8

! !""#.2$("#$%&'%(&%#%(#*,0%.*#1'%#-%5-%2%)./#/(#'2'/-6*#/4.'/(+%).%#(*>'%/$*#%)#(//5(64/46:)#* %.11 26#)/$6%#%2.3#4*)%4./$*8#?6#.'2#'2'/-6*2#2%#4-%/)#4*)#')/#%).6$/$#$%B*4.-6)%C"#5'%$%2#'.6(6A/-#%2.%#*,0%.*#5/-/#/44%$%-#/#4'/(1'6%-/#$%#2'2#5-*56%$/$%2D ==!""#.2$(#%)*-($>??" ==>!""#.2$(#$*!'1>??"#%.48

! !""#2$22')%"#$%&'%(&%#')#*,0%.*#-%5-%2%)./)$*#/#(/#2%26:)#$%(#'2'/-6*8#E2F#5'%$%24*)2'(./-#(/#6);*-+/46:)#$%#(/#2%26:)#7==>!""#2$22')%#/$+9:%)*-($7)"3')%:<>??9#<./+,6G)#+/)65'(/-(/#7==>!""#2$22')%#2$+9:%)*-($7)"3')%:@>:&!1)(:<>??98

! !""#($A.$2+"#$%&'%(&%#%(#*,0%.*#1'%#-%5-%2%)./#/#(/#5%.646:)#$%(#'2'/-6*8#H-/46/2#/#%2.%*,0%.*#5'%$%2#/44%$%-#/#4'/(1'6%-#6);*-+/46:)#2*,-%#(/#5%.646:)D ==!""#($A.$2+#2$(&$(#/$+9:BCCDEBFGC:<>??" ==!""#($A.$2+#6$!,$(2#/$+9:.2$(7!/$%+:<>??" ==!""#($A.$2+#3))H'$2#/$+9:%)*-($73))H'$:<>??"#%.48

I*$/2 %2./2 &/-6/,(%2 >(*,/(%2 2% $%;6)%) %) (/ 4(/2%G4*0)%4IJ.%,1$IK(!*$L)(HJ.%,1$IC$*"1!+'%/IM1)-!1N!('!-1$2#"6"

!"#$%&%'()&'*')$+#%+,-"().-',+-"(E$%+32 $% &/(*-%2 26+5(%2" (/2 &/-6/,(%2 >(*,/(%2 $% IJ6> ./+,6G) 5'%$%) >'/-$/- 2%-&646*2 $%?<+;*)<C8 K+/>6)/ 1'% $625*)%2 $% ')/ 4(/2% ((/+/$/ O+'1 5/-/ />-'5/- (*2 +G.*$*2 < ;')46*L)%2 M.6(%2 1'% 2% %+5(%/) %) .*$/ (/ /5(64/46:)8 ?6 (/ 4(/2% 2% %)4'%).-/ %) ') !"#$%& ((/+/$*F0$(+!J.%,1$ %#6)4('<%#')#+G.*$* /$+G1./9<"#2'#4:$6>*#2%-3#26+6(/-#/(#26>'6%).%D

%!*$2"!3$ P.")%IF0$(+!J.%,1$IO+'1Q

31!22 O+'1

=

2+!+'3 ".-1'3 0.%3+')% /$+G1./953!,$%!<

=

RR>###

($+.(% 521./Q

?

?

N/ 4(/&% 5/-/ $625*)%- $% (/ 4(/2% O+'1 < 2'2 +G.*$*2 %) 4'/(1'6%- 5(/).6((/ $% IJ6> %2 4*)&%-.6- (/4(/2% %) ') 2%-&646*8 O/-/ %((*" /,-% %( /-4P6&* $% 4*);6>'-/46:) !""R3)%0'/R3)%0'/#4*1 < $%;6)%')#)'%&*#2%-&646*#,/0*#(/#4(/&% 2$(&'3$2D

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 52: Libro Symfony2 Apendice Twig

!"#$$%&'()*+%&'()*+,-./0123*&104

!",,,&5$'(,56*/*7#7104

&/#004"85$'(9:)126#;5(7/19<6*/9<6*/

!"#$%&'%()#'*%+",-.'%-"(%)"/)0')12-"32$1)2",-"45'3"(&'2'6)%,$"-7&-"%(-/$"7-0/'#'$8

!"#$$%&'()*+%&'()*+,-./6=*+4

+/'>#/04

56*/*7#7104"?&5$'(,56*/*7#710

9)0) )7'3%)0 (% 7-0/'#'$ ) (%) /)0')12- 32$1)2+ 7':;2-:-%&- '%,'#) -2 %$:10- ,-2 7-0/'#'$ #$% -2;0-.'<$ ?= >$% -7&) #$%.'3(0)#'*%+ #()2?('-0 ;2)%&'22) 45'3 ,- 2) );2'#)#'*% ;(-,- @)#-0 (7$ ,- 2)/)0')12- 56*/*7#710 ;)0)")##-,-0")"2$7":A&$,$7",-"2)"#2)7- <6*/8

@@ 56*/*7#710,+16A/5+BCD'21."*$05."7'/'2"0*6"#.16CE FF

@!"1/"2105/6#7'"104"/'21.G*$05.G7'/'2G0*6G#.16"!F

!"#$%"&'()"&*(+&'(,">()%,$ 7- (&'2'6) ,-%&0$ ,- BC:.$%CD+ 45'3 '%#2(C- (%) -&'?(-&) C (% .'2&0$ 22):),$7 62#(0 ;)0)&0),(#'0 2$7 #$%&-%',$7 ,- 2) ;2)%&'22)= E$ :F7 7-%#'22$ -7 -2 .'2&0$+ 7$10- &$,$ 7' ?('-0-7 &0),(#'0 -2#$%&-%',$",-"/)0')12-78

@@ HIJ1+K062#61"&'.'"505#2*'LH M 62#(0 FF

@@ &#61+'2*#,('.>21 M 62#(0 FF

E)"-&'?(-&)"-7":F7"#*:$,)";)0)"&0),(#'0"#$%&-%',$7":(C"2)03$78

@N 62#(0 NFIJ1+K062#61"&'.'"505#2*'L@N 1(762#(0 NF

@N 62#(0 NFD'21."*$05."7'/'2"0*6"#.16O"&'(01&61652"#7*$*0*&*(+"1/*6O"017"7'

1*50.'7"61.$'2"*(&*7*75(6"56"P,,,Q"/#>'2*0"(*0*"56"#/*R5*$"1S"1#"&'..'7'

&'(01R5#6,@N 1(762#(0 NF

G&'2'6)0 2) -&'?(-&) $ -2 .'2&0$ -7 7':;2-:-%&- (%) #(-7&'*% ,- #$%/-%'-%#')+ C) ?(- -2 .(%#'$%)H:'-%&$ '%&-0%$ ,- 45'3 ;)0) 2$#)2'6)0 2) &0),(##'*% -7 ',A%&'#$ -% ):1$7 #)7$7= E) I%'#) ,'.-0-%H#')"-7"#*:$"7-");2'#)"-2":-#)%'7:$",-"-7#);-8

@!"T:"01"#$/*&#"1/".1&#(*0.'"71"10&#$1"!F@N 62#(0 NF

IU062'(+VJ1+K062#61U%062'(+V"&'.'"505#2*'L

@N 1(762#(0 NF

@!"AW"01"#$/*&#"1/".1&#(*0.'"71"10&#$1"!F@N 016 .1(0#X1"Y CIU062'(+VJ1+K062#61U%062'(+V"&'.'"505#2*'LC NF

@@ .1(0#X1"M 62#(0 FF

@!"Z3*6#2"R51"01"#$/*R51"1/".1&#(*0.'"71"10&#$1"!F

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 53: Libro Symfony2 Apendice Twig

!! "#$%&'#() *+&$% ) +&, --

!.(/0(%#(&1234&(#2("#4&$3%"5(6#(#%4&1#(.-!! 789%*+5$:;<#:=%*+&*#9>%*+5$:;(45"5(?%?&+35@7 ) *+&$% --

!" #$%&'(") *+ ,%-./0$ 1234 565/#$5) $ /0'670$#/)0$"/8$7 6" 9/'/) :6; 6<%"/#$ 60 56'$""6 ')5$9 "$9 )%=#/)069 56" #)>%)060'6 56 '7$5(##/?0 56 @A>B)0A1 A #?>) ('/"/8$7") 60 "$9 %"$0'/""$9 C:/.D !0'76)'7)9 96 6<%"/#$ #?>) #76$7 #$'-").)9 56 '7$5(##/?0E ")9 5/B6760'69 B)7>$')9 5/9%)0/;"69E '7$5(#=#/)069F#)0FG$7/$;"69EF'7$5(##/)069F69%6#/$"69F%$7$F%"(7$"69EF'7$5(##/)069F56F%-./0$9F69'-'/#$9EF6'#D

!"#$%&'()"%*H$ G679/?0 69'-05$7 56 C:/. 0) /0#"(A6 0/0.(0$ 6'/I(6'$ %$7$ .6067$7 60"$#69E A$ I(6 6" 607('$=>/60') 56%6056 56 "$ $%"/#$#/?0 60 "$ I(6 96 ('/"/#6 C:/.D @A>B)0A1 9/ I(6 56B/06 5)9 B(0#/)069%$7$ .6067$7 60"$#69E ""$>$5$9 1&*ABC A ?+2BCD @( J0/#$ 5/B6760#/$ 69 I(6 "$ %7/>67$ .6067$ KLH76"$'/G$9FAF"$F96.(05$FKLHF$;9)"('$9D

!" %7/>67 $7.(>60') 56 "$9 5)9 B(0#/)069 69 );"/.$')7/) 6 /05/#$ 6" 0)>;76 56 "$ 7('$ #)0 "$ I(6 96.6067$F"$FKLHM

9&(A+#DEF!! 1&*AB715+*&6&7C --F;G52H#+(&(2&(15+*&6&9>&;

@/F"$F7('$F76I(/676F%$7->6'7)9EF96F/05/#$0F#)>)F96.(05)F$7.(>60')F56F"$FB(0#/?0M

9&(A+#DEF!! 1&*AB76#*&22#I1+56?4*57J ! 7367K L -C(--F;M$D5+"&43N$(%5O+#(#2

1+56?4*59>&;

9&(A+#DEF!! 1&*AB715+*&6&7J ! 7%#4435$7K PQJ 71&:3$&7K L -C(--F;

G52H#+(&2(23%*&65(6#(1+56?4*5%

9>&;

H)9 6N6>%")9 $0'67/)769 6>%"6$0 "$ B(0#/?0 1&*ABC %$7$ .6067$7 ")9 60"$#69E %)7 ") I(6 9(9 KLH9)0 76"$'/G$9D @/ 06#69/'$9 .6067$7 KLH $;9)"('$9E %)7 6N6>%") %$7$ /0#"(/7 ")9 60"$#69 60 (0 $7#O/=G)FL@@F)F60F(0F6>$/"EF9/>%"6>60'6F#$>;/$ 1&*ABC %)7 ?+2BCD

+)#,*"&-(.&"/*0-*,01*#'$-&#(*,!" #?5/.) PCQH 56 ")9 B)7>("$7/)9 #76$5)9 %)7 @A>B)0A1 96 69'7(#'(7$ #)0 6"6>60')9 963H;DR)0#76'$>60'6E "$ %"$0'/""$ ('/"/8$5$ %$7$ #76$7 ")9 B)7>("$7/)9 #)0 C:/. 96 560)>/0$D5+"I63HI2&R5?*SA*"2S*,3: A 96 60#(60'7$ 60 6" 5/76#')7/) %+4>TR"D5$R>U+36:#>V,3:>

<#%5?+4#%>H3#,%>W5+">D !0 #($"I(/67 #$9)E %$7$ >)5/B/#$7 6" $9%6#') 56 ")9 B)7>("$7/)9 60 '(9%"$0'/""$9F0)F69F06#69$7/)FI(6F>)5/B/I(69F"$9F%"$0'/""$9F/0'670$9F56F@A>B)0A1D

S>$./0$ I(6 60 (0 B)7>("$7/) I(/6769 >)9'7$7 (0 #$>%) 56 '/%) KLHD H) >-9 960#/"") 967&$ >)9='7$7")F#)0F"$FB(0#/?0 D5+"I+5,BC 56FC:/.M

!! D5+"I+5,B?+2C --

!"F#?5/.)FPCQHF.6067$5)F%)7F"$FB(0#/?0F$0'67/)7F69M

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 54: Libro Symfony2 Apendice Twig

!"#$%!&'()& *+,-.*+,/01,&. 2&'33-.4,)51#,)".%6,&!7&'()&%!#891: :;9)-.1,&.

#"-.*+,/01,&. 8'/)-.*+,/<1,&=. ,)51#,)"-.,)51#,)". $'&1)-..%!7"#$%

!" #$%&' (# )(#*+"((# *+,/0"#$0&';+1:>?:/&>:@#A ,-.&*+#/# #*+&%"-%.&*+&0 1&%2' 34& (-' ,#.)-'/&5+")-56785'&59&*&%#*5/&5(#5'"94"&*+&5.#*&%#:

BC (&+2D 1,&0@#"A):4CE

BC 39'2)&)33 CE

BC 3): :;9)4-4:;9)F")*'1&:GH1,&HI CE

BB (&+2DGH*#)&"0@#"A):HI EE

BC )8"39'2)&)33 CE

BC )8"(&+2D 1,&0@#"A):4CE

;#%# .-/"<",#% &( #')&,+- /& &'+& +")- /& ,#.)-' &* 4*# =*",# )(#*+"((#0 #>#/& (# &+"34&+# BC

*+,/0:?)/) CE +#( ,-.- '& .4&'+%# # ,-*+"*4#,"?* @ /&')4A' /&<"*& &( *4&1- #')&,+- /&( ,#.B)- #>#/"&*/- 4* $(-34& ((#.#/- 1,&0@#"A): C&( ."'.- *-.$%& 34& &( /& (# )(#*+"((# "*+&%*# /&DE"9F:

BB *+,/0,+@G1,&I EE

BJ4>>>4JE

BC4*+,/0:?)/)4*+,/403)&*4CE

BC (&+2D 1,&0@#"A):4CE

BC 3): :;9)4- H1,&H CE

!)/%?::9K77!7)/% BB (&+2DGH*#)&"0@#"A):HI EE

BC )8"(&+2D 1,&0@#"A):4CE

8# "*'+%4,,"?* BC *+,/0:?)/) *+,/ 03)&* CE "*/",# 34& &* (# )%-)"# )(#*+"((# C03)&*F '& /&<"*&)#%+& - +-/- &( #')&,+- /& (-' <-%.4(#%"-'G DE"9 $4',#%2 (-' $(-34&' 34& *&,&'"+# )%".&%- &* (#)(#*+"((#5@5/&')4A'05'"5*-5(-'5&*,4&*+%#05&*5(#5)(#*+"((#5-%"9"*#(5/&5!@.<-*@HG

I& &'+# <-%.#0 &( &J&.)(- #*+&%"-% K#,& 34& +-/-' (-' ,#.)-' /& +")- 678 .4&'+%&* &( +&L+-!)/%?::9K77!7)/% )-% /&(#*+& /&( ,4#/%- /& +&L+- /-*/& '& &',%"$& (# 678G M( %&'+- /& ,#.)-'/&5<-%.4(#%"-5.#*+"&*&*5'45#')&,+-5-%"9"*#(G

M( )%-$(&.# /&( ,?/"9- #*+&%"-% &' 34& *- '& )4&/& %&4+"("N#% &* (-' <-%.4(#%"-' /&( %&'+- /& )(#*+"B((#' /& (# #)(",#,"?*G ;#%# .-/"<",#% (-' <-%.4(#%"-' /& 1#%"#' )(#*+"((#'0 ,%&# )%".&%- 4*# )(#*+"((#)#%#5/&<"*"%5&(5*4&1-5#')&,+-5/&5(-'5,#.)-'5/&5<-%.4(#%"-:

BJ43,27L19+87M*),:'N18"&)7O)3+1,2)37$#)@37P+,/7*+,/>?:/&>:@#A4JEBC (&+2D 1,&0@#"A):4CE

BC 3): :;9)4- H1,&H CE

!)/%?::9K77!7)/% BB (&+2DGH*#)&"0@#"A):HI EE

BC )8"(&+2D 1,&0@#"A):4CE

I&')4A'0 &* +-/#' (#' )(#*+"((#' &* (#' 34& 34"&%#' .-/"<",#% &( #')&,+- /& (-' <-%.4(#%"-'0 /&$&'#>#/"% (# ."'.# &+"34&+# BC *+,/0:?)/) CE /& #*+&'0 )&%- #K-%# *- &',%"$#' 03)&* '"*- (# %4+# /&&'+#5)(#*+"((#:

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#

Page 55: Libro Symfony2 Apendice Twig

!"#$%&'()*+'+#$%&' ,-$+&)./0123+45%&'4$%&'6*)'36)789, ":

!;#666;:

!! $%&'(&%7<0&3= ::

!"# $%&'(") *' +,'-#-* (".'/'01# -% 1*2-0&" .- &"."* %"* /"#(,%1#'"* .- %1 12%'010'34) 4" -* 4-0-*15#'"6+,-6171.1*6%16-&'+,-&1 !"#$%&'()*+'+#": -46&".1*68601.16,416.-6%1*62%14&'%%1*9

:8(/"48; .-/'4- ,41 "20'34 .- <='> %%1(1.1 $%&' +,- 2-#('&- '4.'01# %1 #,&1 .- %1 2%14&'%%1 +,-*- ,&'%'?1#@ 21#1 0#-1# %"* /"#(,%1#'"*9 :, A1%"# 2"# .-/-0&" -* -% *'>,'-4&-) +,- B10- +,- %"* /"#(,5%1#'"*6*-60#--460"46-%-(-4&"* >28?@C

;#.AABC%1$89BC%1$896D'3)7894

;#666$%&'4

&+E%0&C+E4

F ,$%&'(28?(3.D%0)6*)'36)789,

D.-(@* .- $%&'(28?(3.D%0)6*)'36)789 :8(/"48; '40%,8- "&#1 2%14&'%%1 %%1(1.1$%&'().G3+(3.D%0)6*)'36)789 +,-6>-4-#16%"*6/"#(,%1#'"*60"46&1E%1*6-46A-?6.-60"4 >28?@C

;#.AABC%1$89BC%1$896D'3)7894

;#666$%&'4

&+E%0&C+E4

F ,$%&'().G3+(3.D%0)6*)'36)789,

F#-1# ,41 2%14&'%%1 0"(2%-&1 21#1 .-/'4'# -% 1*2-0&" .- %"* /"#(,%1#'"* -* (,8 *-40'%%"9 GE*-#A1-% 03.'>" .- %1 2%14&'%%1 $%&'().G3+(3.D%0)6*)'36)789 +,- *- -40,-4&#1 -4 -% .'#-0&"#'" E&CB

HD'$%1DB/&829+BI789BJ+E%0&C+EB?8+7EB5%&'B9 H#10'1* 1 %1 '4*&#,00'34 0E+ *- '(2"#&1 %1 2%14&'5%%1 $%&'(28?(3.D%0)6*)'36)789 8 .-*2,I* *- #-.-/'4-4 *"%1(-4&- 1+,-%%"* E%"+,-* 0,8" 1*2-0&"*-6+,'-#-6(".'/'01#C

!;#E&CBHD'$%1DB/&829+BI789BJ+E%0&C+EB?8+7EB5%&'B$%&'().G3+(3.D%0)6*)'36)789#;:!" 0E+ K$%&'(28?(3.D%0)6*)'36)789K ":

!" G3%CL $8+32(&%7#":

!;#666#;:!" +12G3%CL ":

!" G3%CL $%&'(+&&%&E#":

!;#666#;:!" +12G3%CL ":

!" G3%CL *822+1(&%7#":

!;#666#;:

!"#$%&'()!)*+),-.-/)%()"+0$.&++01)23&4 5(10//-++-)3(6)74&+)'-$)89,:-$9;

!"#

Page 56: Libro Symfony2 Apendice Twig

!" #$%&'()* "+

!" &'()* ,(-./01%2#34"+

!5466645+!" #$%&'()* "+

!" #$ %#& '# ,(-./37&'#/'78(936:3.'63012 ()"#*#+ ),"-"&.* ,) /*0/". /-.$,"--.1 "$'"2. +) *),. '#$3,*04'#4-.40/2"5$ -#;(9-)#;6

547<<=)($,12=)($,1268.'3012>

54666,(-.>

-#;(9-)#;>

? @A1B9$%'#>C(-.>,(-.6:3.'63012@

!"#$%%&''&()"*(+,-'(.&/(0123&/14 567/8-."(5(9'(2&:&%(8"(6'$/:-''$#(;)-,

!"#