41.2. ÄÜÆ®·Ñ·¯ ½ºÅ©¸³Æ®

Zend_View ÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÏ°í ¼³Á¤À» ½Ç½ÃÇÏ´Â °ÍÀÌ ÄÜÆ®·Ñ·¯ÀÇ ¿ªÇÒÀÔ´Ï´Ù. ±× ´ÙÀ½¿¡ ºä¿¡ º¯¼ö¸¦ ´ëÀÔÇØ, ÀûÀýÇÑ ½ºÅ©¸³Æ®¸¦ »ç¿ëÇØ Ãâ·ÂÀ» ·»´õ¸µ Çϵµ·Ï(µíÀÌ) Áö½ÃÇÕ´Ï´Ù.

41.2.1. º¯¼öÀÇ ´ëÀÔ

ºä½ºÅ©¸³Æ®¿¡ Á¦¾î¸¦ ¿Å±â±â Àü¿¡, ÇÊ¿äÇÑ º¯¼ö¸¦ ÄÜÆ®·Ñ·¯ ½ºÅ©¸³Æ®·ÎºÎÅÍ ºä¿¡ ´ëÀÔÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. Åë»óÀº, ºäÀνºÅº½ºÀÇ ÇÁ·ÓÆÛƼ¿¡ÀÇ ´ëÀÔÀ» ½Ç½ÃÇÕ´Ï´Ù.


<?php
$view 
= new Zend_View();
$view->"Hay";
$view->"Bee";
$view->"Sea";

±×·¯³ª, ´ëÀÔÇÏ´Â °ªÀÌ ¹ú½á ¹è¿­À̳ª ¿ÀºêÁ§Æ®ÀÇ Çü½ÄÀÌ µÇ¾î ÀÖ´Â °æ¿ì´Â, ÀÌ·¯ÇÑ ¹æ¹ýÀº ±ÍÂú½À´Ï´Ù.

assign() ¸Þ¼Òµå¸¦ »ç¿ëÇϸé, ¹è¿­À̳ª ¿ÀºêÁ§Æ®ÀÇ ³»¿ëÀ» ¡¸ÀϰýÇØ¡¹´ëÀÔÇÒ ¼ö ÀÖ½À´Ï´Ù.ÀÌÇÏÀÇ ¿¹´Â, À§¿¡¼­ Çϳª Çϳª ÇÁ·ÓÆÛƼ¸¦ ´ëÀÔÇϰí ÀÖ´ø °Í°ú °°ÀÌ µ¿ÀÛÇÕ´Ï´Ù.


<?php
$view 
= new Zend_View();

// Å°/Ä¡ ÀÇ Æí¼ºÀ¸·ÎºÎÅÍ µÇ´Â ¹è¿­À» ÀÛ¼ºÇÕ´Ï´Ù.
// º¯¼ö¸íÀÌ Å°, ±× º¯¼ö¿¡ ´ëÀÔÇÏ´Â °ªÀÌ ¹è¿­ÀÇ °ªÀÌ µË´Ï´Ù.
$array = array(
    
'a' => "Hay",
    
'b' => "Bee",
    
'c' => "Sea",
);
$view->assign($array);

// ¿ÀºêÁ§Æ®ÀÇ ÇÁ·ÓÆÛƼµµ ¶È°°ÀÌ Ãë±ÞÇÒ ¼ö ÀÖ½À´Ï´Ù.
// ´ëÀÔ ½Ã¿¡, ¹è¿­ Çü½Ä¿¡ ij½ºÆ® Çϰí ÀÖ´Â °Í¿¡ ÁÖÀÇÇսôÙ.
$obj = new StdClass;
$obj->"Hay";
$obj->"Bee";
$obj->"Sea";
$view->assign((array) $obj);

´Ù¸¥ ¹æ¹ýÀ¸·Î¼­assign ¸Þ¼Òµå¸¦ »ç¿ëÇØ Çϳª Çϳª ´ëÀÔÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì´Â ÃÖÃÊÀÇ Àμö°¡ º¯¼ö¸í, ±×¸®°í ±× ´ÙÀ½¿¡ º¯¼öÀÇ °ªÀ» ÁöÁ¤ÇÕ´Ï´Ù.


<?php
$view 
= new Zend_View();
$view->assign('a'"Hay");
$view->assign('b'"Bee");
$view->assign('c'"Sea");

41.2.2. ºä½ºÅ©¸³Æ®ÀÇ ·»´õ¸µ

ÇÊ¿äÇÑ º¯¼ö¿¡ ¸ðµÎ °ªÀ» ´ëÀÔÇϸé, ÄÜÆ®·Ñ·¯´Â Zend_View ¿¡, ÀûÀýÇÑ ºä½ºÅ©¸³Æ®¸¦ ·»´õ¸µ Çϵµ·Ï Áö½ÃÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ±×·¯±â À§Çؼ­´Â render() ¸Þ¼Òµå¸¦ ÄÝ ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â, ºä¸¦ Ç¥½ÃÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ·»´õ¸µ ÈÄÀÇ °á°ú¸¦ µ¹·ÁÁÖ´Â °Í¸¸À¸·Î ÀÖ´Â °Í¿¡ ÁÖÀÇÇսôÙ. ÀûÀýÇÑ ½ÃÁ¡¿¡¼­, µ¹·ÁÁÖ¾îÁø °á°ú¸¦ print ȤÀº echo ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.


<?php
$view 
= new Zend_View();
$view->"Hay";
$view->"Bee";
$view->"Sea";
echo 
$view->render('someView.php');

41.2.3. ºä½ºÅ©¸³Æ®ÀÇ ÆÐ½º

µðÆúÆ®¿¡¼­´Â,Zend_View (Àº)´Â, ºä½ºÅ©¸³Æ®°¡ È£ÃâÇØ ¿ø½ºÅ©¸³Æ®·ÎºÎÅÍÀÇ »ó´ë ÆÐ½º»ó¿¡ ÀÖ´Â °ÍÀ» »óÁ¤Çϰí ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é ÄÜÆ®·Ñ·¯ ½ºÅ©¸³Æ®°¡ "/path/to/app/controllers" ¿¡ ÀÖ¾úÀ» °æ¿ì¿¡, °Å±â¼­ $view->render('someView.php') (À»)¸¦ ÄÝ Çϸé,Zend_View ÇÏ "/path/to/app/controllers/someView.php" (À»)¸¦ ã½À´Ï´Ù.

´ëºÎºÐÀÇ °æ¿ì, ºä½ºÅ©¸³Æ®´Â ¾îµò°¡ ´Ù¸¥ Àå¼Ò¿¡ ÀÖ´Â °ÍÀº ºÐ¸íÇϰÚÁö¿ä. Zend_View ¿¡ ºä½ºÅ©¸³Æ®ÀÇ Àå¼Ò¸¦ °¡¸£Ä¡·Á¸é , setScriptPath() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù.


<?php
$view 
= new Zend_View();
$view->setScriptPath('/path/to/app/views');

ÀÌ·¸°Ô Çϸé,$view->render('someView.php') ÇÏÁö¸¸ ÄÝ µÇ¾úÀ» °æ¿ì¿¡ "/path/to/app/views/someView.php" (À»)¸¦ ã°Ô µË´Ï´Ù.

½ÇÀº,addScriptPath() ¸Þ¼Òµå¸¦ »ç¿ëÇϸé, °Ë»ö ÆÐ½º¸¦ ¡¸°ãÃÄ ½×´Â´Ù¡¹ÀÏÀÌ »ý±é´Ï´Ù.À̰ÍÀ» »ç¿ëÇϸé,Zend_View (Àº)´Â Á¦ÀÏ ¸¶Áö¸·¿¡ Ãß°¡µÈ ÆÐ½º·ÎºÎÅÍ ºä½ºÅ©¸³Æ®¸¦ ã±â ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±¸Á¶¸¦ ÀÌ¿ëÇϸé, µðÆúÆ®ÀÇ ºä¸¦ µ¶ÀÚÀûÀÎ ºä·Î µ¡¾²±âÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ¸î°³ÀÇ ºä¿¡ ´ëÇØ¼­ µ¶ÀÚÀûÀÎ ¡¸Å׸¶¡¹È¤Àº ¡¸½ºÅ²¡¹ (À»)¸¦ ÀÛ¼ºÇØ, ±× ¿ÜÀÇ ºä´Â ±×´ë·Î ÇØ µÎ´Â °ÍÀÌ °¡´ÉÇØÁý´Ï´Ù.


<?php
$view 
= new Zend_View();
$view->addScriptPath('/path/to/app/views');
$view->addScriptPath('/path/to/custom/');

// $view->render('booklist.php') (À»)¸¦ ÄÝ Çϸé,Zend_View ÇÏ
// ¿ì¼± ÃÖÃʷΠ"/path/to/custom/booklist.php" (À»)¸¦ ã¾Æ,
// ´ÙÀ½¿¡ "/path/to/app/views/booklist.php", ±×¸®°í ¸¶Áö¸·¿¡
// Ä¿·±Æ® µð·ºÅ丮·ÎºÎÅÍ "booklist.php" (À»)¸¦ ã½À´Ï´Ù.