ããã³ãã¬ãŒããšã³ãžã³ããç¹ã«ãPHPã®ãã³ãã¬ãŒããšã³ãžã³ã-ãã©ãŒã©ã ã®ãããã¯ã¿ã€ãã«ãèšäºãŸãã¯ããã°ãšã³ããªã®ã¿ã€ãã«ã§ãããã®åèªã«åºäŒã£ãã®ã§ã次ã®ããªããŒã¯è¿ãã«ãããŸãã ãã®çç±ã¯äœã§ããïŒ
- éžæ ã PHPã®ãã³ãã¬ãŒããšã³ãžã³ã¯å€ããããŸããããéåžžã«å€ããããŸãã äžéšã¯ãã€ãã£ãPHPã³ãŒãã§å®è£ ãããä»ã¯Cæ¡åŒµæ©èœã§å®è£ ãããŸãã ãããã®å€ãã¯ãäºçŽ°ãªããšãçµ±èšçãã©ã¡ãŒã¿ãŒïŒãã£ãã·ã³ã°ã®æç¡ãåŠçæéãå®è¡æéãªã©ïŒã®ã¿ãäºãã«ç°ãªããå€ãã¯æ¢ç¥ã®ãã³ãã¬ãŒããšã³ãžã³ã®è»œéãªé¡äŒŒç©ã§ãããäžéšã¯æé©åãããããŒãžã§ã³ã§ãã
- ä»äºã®ããŸããŸãªåå ã æãæåãªãã³ãã¬ãŒããšã³ãžã³ã¯ããŸã£ããç°ãªãååã«åºã¥ããŠããŸãïŒãã®èšäºã§ã¯ãããã«ã€ããŠèª¬æããŸãïŒã SmartyãšBlitzãåŠçã®èšèšãšè«çæ¡ä»¶ã®ååã§ã©ã®ããã«ç°ãªãããèŠããŠãããŠãã ããããããããããã®ååã®ããããã«æ¬ é¥ãããããŸãã¯äžååãªèšèªãåŒã¶ããšã¯å€ãããŸããã
- ãããã®åå ã¯äž¡æ¹ãšããããªããŒã®åºçŸã®äž»ãªçç±ãã€ãŸãèªçµŠèªè¶³ãåŒãèµ·ãããŸãã çŸåšã®ããã«ã10ã15åã§ã¯ãªããååããšã«1ã€ã®ãã³ãã¬ãŒããšã³ãžã³ãããå Žåãããã¯çµ¶å¯Ÿãã©ã¹ã«ãªããŸãã ãããããã³ãã¬ãŒããšã³ãžã³ã®åäœã®ããç¥ãããŠããååãæäœãããããããããã«å€æŽããããšã§ãæ°ããèªçµŠèªè¶³ã®ãã³ãã¬ãŒããšã³ãžã³ãçãŸãããšãå声ãåŸãŠãNçªç®ã®åŽé¢ãããã°ã©ããŒã®å¯Ÿæ±ºã«çŸããŸãã
çœé³¥ãã¬ã³ããã€ã¯ãèŠã€ãããŸãããïŒ èª°ããããããã®æ¹åã«åãã£ãŠããŸããã1ã€ã®ãã³ãã¬ãŒããšã³ãžã³ã®ããããã¢ãããŒãã®æãããªæ©èœäžã®æ¬ é¥ãææããããšã¯äžå¯èœã§ã-ãã®ãµããŒã¿ãŒã¯åžžã«ãã®æ©èœãå®è£ ããæ¹æ³ãèŠã€ããè°è«ã¯åã³çµããã®ãªãçã«ãªããŸãã
ããŠãå®éããªããã®èšäºãæžããŠããã®ã§ããã ããã€ãã®ã¿ã€ãã®ãã³ãã¬ãŒããšã³ãžã³ã®æ§æãšãããã°ã©ããŒãšãšã³ã³ãŒããŒã®äž¡æ¹ã«æäŸãããæè»æ§ã®ã¬ãã«ïŒWebã¢ããªã±ãŒã·ã§ã³ã®ãã³ãã¬ãŒããæ±ã人ãšåŒã¶ããã«ïŒã匷調ããããšæããŸãã
åçš®ã®ä»£è¡šã詳现ã«æ€èšããã®ã§ã¯ãªããå¿ èŠãªã³ãŒãäŸã®ã¿ã瀺ããæ確ã«ããããã«ãæãäžè¬çãªé¡§å®¢ãæ€èšããŸãã ããã¯å人ã§ãããããšãã°ãããã°ã©ãã³ã°èšèªã話ããªãå°èŠæš¡ã®ãªãã£ã¹ã®ã·ã¹ãã 管çè ã§ãããç°¡åã«èšç·Žããããããžã§ã¯ãã®ãŠã§ããã¹ã¿ãŒã§ãããšã³ã³ãŒãã§ããããŸãã ãããŠãããã¯ç空ã®çäœã¯ã©ã€ã¢ã³ãã§ã¯ãããŸãã-ãããã®ã»ãšãã©ã 人ã§ãªãå Žåã¯ããµã€ãã®èšèšèŠä»¶-ãåŸã§ç°¡åã«å€æŽã§ããããã«ã
-1ïŒçŽç²ãªPHP
è² ã®ã€ã³ããã¯ã¹ãçŽç²ãªPHPã³ãŒãã«å²ãåœãŠãŸããããããã¯ãç§ãåŸãã¹ãäœçœ®ãæ確ã«ç€ºãããã ãã«è¡ãããŸããã顧客ã«ãšã£ãŠãããã¯åœŒãåŠã¶å¿ èŠã®ãªãæã森ã§ããã©ã®ããã°ã©ãã³ã°èšèªã®æ§æãæ倧éã®æè»æ§ã®ããã«èšèšãããŠããããããã³ãã¬ãŒããšã³ãžã³ã®æãæãããå¯æ¬¡ã§ããåé·ã§ããæ§æãforeachãforãæ§æãããã³ä»ã®ãã¹ãŠãçž®å°ã«å€ããå Žåã
Zend_FrameworkãäŸãšããŠåãäžããŸããããããªãéçºãããéå¿çãªãããžã§ã¯ããSavant3ãåãäžããŸãã
<html> <è¡š> <ïŒphp whileïŒ$ row = $ this-> result-> fetchRowïŒïŒïŒïŒïŒ> <tr> <ïŒphp foreachïŒ$è¡ãšããŠ$è¡ïŒïŒïŒ> <td> <ïŒphp $ this-> _ïŒ$ valïŒïŒ> </ td> <ïŒphp endforeach; ïŒ> </ tr> <ïŒphp endwhile; ïŒ> </ table> </ html>ããã¯ãã€ãã£ãPHPã³ãŒãã§ãããïŒ$ row = $ this-> result-> fetchRowïŒïŒïŒïŒããã³foreachïŒ$ row as $ valïŒïŒã®æååãç解ããã«ã¯ãPHPã®è€éãªã¹ãã«ãå¿ èŠã§ãã ãããŠãããã¯ãPHPèªäœãåªãããã³ãã¬ãŒããšã³ãžã³ã§ããã®ã«ããªãè»èŒªãåçºæããã®ã§ããïŒããªã©ã®ã¹ããŒãã¡ã³ãã«å¯Ÿããäž»ãªåè«ã§ãã ããããã ããã°ã©ããŒãå¥è·¡ãèµ·ããããšãã§ããäžèŒªé§åã«ä¹ãããã«é¡§å®¢ã«æããã®ã§ã¯ãªããæ§æã®èªç±ã«å¯ŸããŠããã·ã³ãã«ã§æµæåã®ãããã®ãäŸãã°äžèŒªé§åãäžããããã«ã ã¯ã©ã€ã¢ã³ãã®å Žåãããã¯ãŸã£ããåãã¬ãã«ã§ãããšä»¥åã«æ³å®ããŠããŸããã
ãã³ãã¬ãŒããšã³ãžã³ã«çŽæ¥è¡ããŸãããã çªå·ä»ãã¯ãäŒçµ±ã«åŸã£ãŠããŒãããå§ããŸãã</ P
0ïŒéèš³è ïŒ3IïŒ
æãæåãªã®ã¯Smartyã§ãã ããæœè±¡åãããŠããŸãããç§ã®æèŠã§ã¯ãããææ§ãªETSæ§æã䜿çšããŠããŸãã ãŸããPEARã¯PEAR :: HTML_Template_FlexyãšããçŽ æŽãããã¯ã©ã¹ãè¡šããŸãã 圌ãã®æåã®åé¡ã¯ãSmartyã®å察è ãéåžžã«æ£ããææããŠããããã«ãå€ãã®æ§é ãPHPã³ãŒãã§é¡äŒŒããŠããããã«èŠããSmartyãšPHPã®åŒ·ãéããçŸããããè€éãªã¿ã¹ã¯ããã£ãã«åºäŒããªãããšã§ãã ããšãã°ãPEAR :: HTML_Template_Flexyã®äŸã®ã³ãŒãïŒ{ucfirstïŒ#this is the headerïŒïŒ} {includeBodyïŒïŒïŒh} {foreachïŒaãkãv} kã¯{k}ãvã¯{v} {endïŒ} {ifïŒshowStuff}ããã«ã¡ã¯{endïŒ} {ifïŒshowDogïŒïŒ}ã¯ã³ã¡ãã{endïŒ}Smartyãšåæ§ã®ãã³ãã¬ãŒããšã³ãžã³ã¯åé·ã«èŠããŸãã ãããã«ã€ããŠè°è«ããã®ã¯ã°ãããŠããŸãã ãããåŒã°ãªãã§ãã ãã-éããé ããéè² è·ã§ãããSmartyã¯ãŸãã«ããã§ãã åæ§ã®ãã³ãã¬ãŒããšã³ãžã³ã¯ãããã°ã©ãã«ãã£ãŠããã°ã©ãåãã«äœæãããŠããŸãã ããŒã ããããžã§ã¯ãã«åãçµãã§ããå Žåããã¡ãããè¿œå èšèªãã®æè»ãªæ§æãšãã³ãã¬ãŒãå ã®ããžãã¯ã®äžéšã転éããæ©èœã«ãããéçºãå€§å¹ ã«ç°¡çŽ åãããŸããããããžã§ã¯ãããã®ãããªãã³ãã¬ãŒããšã³ãžã³ã®æ§æã«ç²ŸéããŠããªã人ã«æž¡ããããšããã«-ããã¥ã¡ã³ããªããã¥ãŒããªã¢ã«ã¯ä¿åãããŸããã ãŸãããã³ãã¬ãŒããšã³ãžã³èªäœã®èšè¿°ãéåžžã«äžååãªå Žåãããžãã¯ãäžèŠããŠç解ããããšã¯äžå¯èœã§ããETSã¯çŽç²ãªåœ¢åŒã®PHPã«ã¯èŠããŸãããã詳现ã¯Smartyã«äŒŒãè€éãªæ§æãæã£ãŠããŸãã ETSãèŠãããšããªã人ã®ããã«ãã³ã¡ã³ããªãã®ã³ãŒãã以äžã«ç€ºããŸãã
{ãã¹ã¯ïŒã¡ã€ã³} <html> <head> <title> {titlele </ title> </ head> <æ¬äœ> <h1> {titlele </ h1> <hr> {ãã¹ã¯ïŒmypartners} {maskïŒ//ããŒãããŒ} <b> {ifïŒ{id} == {../../id}} <p> {label} </ p> {/ if} </ b> {/ãã¹ã¯} {/ãã¹ã¯} </ body> </ html> {/ãã¹ã¯}ç¹ã«Smartyã«é床ã®æ³šæãæã£ãããšããpoã³ããŸãããã€ã³ãã¯ã圌ã«å¯Ÿããç§ã®æ 床ã§ã¯ãªããèæ ®ãããŠãããã³ãã¬ãŒããšã³ãžã³ã®åéã«ããã圌ã®æ確ãªåªäœæ§ã§ãã
1ïŒãããã¯ãšå€æ°
ãã³ãã¬ãŒããšã³ãžã³ã®veryææã«ãPHPã³ãŒãããåé¢ãããã°ããã®ãšãã«ããã®ã¿ã€ããæ®åããŸããã ãããã«ã¯ãOOãã³ãã¬ãŒããPEAR :: HTML_Template_ITãBlitzãTemplatePowerãYapterãªã©ããããŸãã ãã®èšäºãæžãããšãã2006幎ã®25åã®ãã³ãã¬ãŒããšã³ãžã³ ïŒããã«æããååã®äžéšãèŠã€ããããšãã§ããŸãïŒã®å€ãïŒ2幎以äžåã®ïŒ ãªã¹ããæãäžããŸããã 2007幎ãã2008幎ã®é MVCãã¿ãŒã³ïŒããã³ããããçš®é¡ã®ã¬ãŒã«ã®ãããªãã¬ãŒã ã¯ãŒã¯ïŒã¯éåžžã«äººæ°ãããããããã¯ãã³ãã¬ãŒããšã³ãžã³ã¯ãŸã£ããé©åããŸããã§ããã 圌ãã¯ã埪ç°ãããã¯ãšæ¡ä»¶ä»ããããã¯ãæ åœããã³ã³ãããŒã©ãŒã®è¿œå ã³ãŒããææ¡ããŸããã ãããŠãã®ã¬ãã¥ãŒã§æäŸããããªã³ã¯ã®å€ããæ©èœããªãããšã¯éåžžã«éèŠã§ãã ãããã®ãã³ãã¬ãŒããšã³ãžã³ã¯ãWebã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®ææ°ã®æè¡ã®èæ¯ã«å¯ŸããŠæ代é ãã§ããããã¯ã©ã·ãã¯ããšåŒã°ããããšãå€ãã¬ãã¥ãŒã§ã¯ãéåžžã«åŒ·åãªçžäºäœçšã®ååãå«ãŸããŠããŸãïŒããã°ã©ã <=>ãã¬ãŒã³ããŒã·ã§ã³ïŒæå³çã«ããžãã¯ãšã¯åŒã°ãããã®åŸã«ççŸãããå ŽåããããŸãïŒãã詳现ã«æ€èšãããã®ã§ãBlitzã³ãŒããåãäžããŸãã{{ã¢ã€ãã ãéå§}} ããã«ã¡ã¯äžç {{END}}察å¿ããPHPã³ãŒãïŒ
<ïŒ $ T =æ°ããé»ææŠïŒ 'tpl'ïŒ; $ T->ç¹°ãè¿ãïŒ '/ item'ïŒ; echo $ T-> parseïŒïŒ; ïŒ>ãã®ã³ãŒãã¯äœãããŸããïŒ ãhelloãworldããšããããã¹ãã衚瀺ãããã ãã§ãã ãã以äžã¯ãããŸããããããã«ãã®ãããªãã³ãã¬ãŒããšã³ãžã³ã®éèŠãªæ©èœããããŸããå®è¡ãããæäœã®æ¬è³ªã¯ããã³ãã¬ãŒããšã³ãžã³ã®åªåã«ãã£ãŠå€æŽããããšã¯ã§ããŸãã ã ã€ãŸããããã¬ãŒã³ããŒã·ã§ã³ããžãã¯ããšããçšèªïŒåŸã§èª¬æããŸãïŒã«è§Šããªããã°ãããã°ã©ã ã«å®å šã«äŸåããŸãã ã€ãŸã å®éããšã³ã³ãŒããŒã¯ãã³ãã¬ãŒããå¶åŸ¡ã§ããŸããããããã¯ã®åœ¢åŒã®ãã¯ãŒã¯å¹»æ³çã§ãã ä»ããETSãå©çšããŠãã ããïŒ
{ç¹°ãè¿ãïŒ<b> n </ b>} ããã«ã¡ã¯äžç {/ç¹°ãè¿ã}ãããŠãããã§ã¯ãŸã£ããéã§ãã ãã³ãã¬ãŒãã«ã¯ããµã€ã¯ã«ãå¶åŸ¡ããæ©èœããããŸãã ãããã£ãŠãè«çæ¡ä»¶ããããŸãã Blitzãã³ãã¬ãŒããšã³ã³ãŒããŒããhelloãworldããããã¯ã7å衚瀺ãããå Žåã¯ãããã°ã©ããŒã«é»è©±ããããŠã ãã®ãªãã·ã§ã³ã¯ããã°ã©ã ã«çŽæ¥é 眮ãããŠããŸãã ETSãã³ãã¬ãŒãã®ãšã³ã³ãŒããŒãåãããšããããå Žåã¯ããã³ãã¬ãŒãå ã§èªåã§è¡ãããšãã§ããŸããããã®ãããªèªç±ã®ããã«ããšã³ã³ãŒããŒã¯SmartyãŸãã¯ETSã®æ§æã調ã¹ãããšã§æ¯æããè¡ããŸãã ãŸããæ¯æããåžæããªãå Žåã¯ããããã¯ãã³ãã¬ãŒããšã³ãžã³ã®åäœåçã«ãã£ãŠå€§å¹ ã«å¶éãããŸãã ãããŠãæ¢åã®ãããã¯ããã³ã€ã³ã¿ãŒããªã¿åãã³ãã¬ãŒããšã³ãžã³ã®å ±çã«ã¯ãå§åçã«ã²ã©ãæ§æããããå£æªãªå®è£ ããããŸããã
2ïŒã¿ã°ããŒã¹
ãããã¯ãbTemplateãPEAR :: HTML_Template_Flexyãªã©ã®HTMLã¿ã°ãŸãã¯ãã®æŽŸçç©ã«åºã¥ããã³ãã¬ãŒããšã³ãžã³ã§ãïŒäžåºŠã«2ã€ã®ã«ããŽãªã«é©åããŸãïŒã ããã§ã¯ããŸãæ®åããŠããŸããã2çš®é¡ã®ãã³ãã¬ãŒããšã³ãžã³ã®ã¿ãåãäžããŸãã- ãã³ãã¬ãŒããè£å®ããç¹å¥ãªã¿ã°
æ¢åã®HTMLãã³ãã¬ãŒãæ§é ã§æäœãã
åè ã¯ããŸã£ããé¢å¿ãè¡šããªãããªããªãã ã»ãšãã©ã®å®è£ ã§ã¯ããããã¯ã¿ã€ã0ãã³ãã¬ãŒããšã³ãžã³ã®å€æŽããããã¥ãŒã§ãã ãã®ãããªãã³ãã¬ãŒããšã³ãžã³ãèŠãããšããªã人ã«ãšã£ãŠã¯ãbTemplateã®æ¬¡ã®ã³ãŒãã§ååã§ãã