Á¦41Àå Zend_View

¸ñÂ÷

41.1. µµÀÔ
41.1.1. ÄÜÆ®·Ñ·¯ ½ºÅ©¸³Æ®
41.1.2. ºä½ºÅ©¸³Æ®
41.1.3. ¿É¼Ç
41.1.4. À¯Æ¿¸®Æ¼ ¸Þ¼Òµå
41.2. ÄÜÆ®·Ñ·¯ ½ºÅ©¸³Æ®
41.2.1. º¯¼öÀÇ ´ëÀÔ
41.2.2. ºä½ºÅ©¸³Æ®ÀÇ ·»´õ¸µ
41.2.3. ºä½ºÅ©¸³Æ®ÀÇ ÆÐ½º
41.3. ºä½ºÅ©¸³Æ®
41.3.1. Ãâ·ÂÀÇ À̽ºÄÉÀÌÇÁ
41.3.2. ´Ù¸¥ ÅÛÇø´ ½Ã½ºÅÛÀÇ »ç¿ë
41.4. ºäÇïÆÛ
41.4.1. ºÎ¼ÓÀÇ ÇïÆÛ
41.4.2. ÇïÆÛ ÆÐ½º
41.4.3. µ¶ÀÚÀûÀÎ ÇïÆÛ¸¦ ¾´´Ù
41.5. Zend_View_Abstract

41.1. µµÀÔ

Zend_View (Àº)´Â, ¸ðµ¨ - ºä - ÄÜÆ®·Ñ·¯ ÆÐÅÏ¿¡ À־ÀÇ ¡¸ºä¡¹·Î¼­ ÀÏÇϴ Ŭ·¡½ºÀÔ´Ï´Ù. ºäÀÇ ½ºÅ©¸³Æ®¸¦, ¸ðµ¨ ¹× ÄÜÆ®·Ñ·¯·ÎºÎÅÍ ºÐ¸®Çϱâ À§Çؼ­ Á¸ÀçÇÕ´Ï´Ù. ÀÌ Å¬·¡½º¿¡¼­´Â, ÇïÆÛ ½Ã½ºÅÛ, Ãâ·ÂÀÇ ÇÊÅ͸µ ¹× º¯¼öÀÇ À̽ºÄÉÀÌÇÁ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù.

Zend_View (Àº)´Â, ÅÛÇø´ ½Ã½ºÅÛ¿¡ ´ëÇØ¼­´Â ƯÈ÷ Á¶°ÇÀº ¾ø½À´Ï´Ù. ÅÛÇø´ ¾ð¾î·Î¼­ PHP (À»)¸¦ »ç¿ëÇÏ´ÂÁö, ȤÀº ´Ù¸¥ ÅÛÇø´ ¿£ÁøÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇϰí, ±×°ÍÀ» ºä½ºÅ©¸³Æ® Áß(¾È)¿¡¼­ Á¶ÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù.

±âº»ÀûÀ¸·Î,Zend_View (À»)¸¦ »ç¿ëÇÒ ¶§ 2 °³ÀÇ ´Ü°è¸¦ Àâ°Ô µË´Ï´Ù. 1. ÄÜÆ®·Ñ·¯ ½ºÅ©¸³Æ®°¡ Zend_View ÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇØ, ±× ÀνºÅϽº¿¡ º¯¼ö¸¦ ´ëÀÔÇÕ´Ï´Ù. 2. ÄÜÆ®·Ñ·¯°¡ Zend_View ¿¡ ´ëÇØ¼­ ÀûÀýÇÑ ºä¸¦ ·»´õ¸µ Çϵµ·Ï(µíÀÌ) Áö½ÃÇØ, °Å±â¿¡ µû¶ó ÄÜÆ®·Ñ·¯°¡ ºä½ºÅ©¸³Æ®¸¦ Á¦¾îÇÕ´Ï´Ù. °Å±â¼­ ºäÀÇ Ãâ·ÂÀÌ ÀÛ¼ºµË´Ï´Ù.

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

´Ü¼øÇÑ ¿¹·Î¼­ Ã¥ÀÇ À϶÷À» Ãë±ÞÇÏ´Â ÄÜÆ®·Ñ·¯°¡ ÀÖ±â·Î ÇսôÙ. ±× µ¥ÀÌÅ͸¦ ºä¿¡ Ç¥½ÃÇÏ´Â °ÍÀ» »ý°¢ÇÕ´Ï´Ù. ÄÜÆ®·Ñ·¯ ½ºÅ©¸³Æ®´Â, ¾Æ¸¶ ÀÌ¿Í °°ÀÌ µÇ°ÚÁö¿ä.


<?php
// Ã¥ÀÇ ÀúÀÚ ¹× ŸÀÌÆ²À» ÃëµæÇϱâ À§Çؼ­ ¸ðµ¨À» »ç¿ëÇÕ´Ï´Ù
$data = array(
    array(
        
'author' => 'Hernando de Soto',
        
'title' => 'The Mystery of Capitalism'
    
),
    array(
        
'author' => 'Henry Hazlitt',
        
'title' => 'Economics in One Lesson'
    
),
    array(
        
'author' => 'Milton Friedman',
        
'title' => 'Free to Choose'
    
)
);

// Ã¥ÀÇ µ¥ÀÌÅ͸¦ Zend_View ÀνºÅϽº¿¡ ´ëÀÔÇÕ´Ï´Ù
Zend_Loader::loadClass('Zend_View');
$view = new Zend_View();
$view->books $data;

// "booklist.php" ±×·¸´Ù°í ÇÏ´Â ºä½ºÅ©¸³Æ®¸¦ ·»´õ¸µ ÇÕ´Ï´Ù
echo $view->render('booklist.php');

41.1.2. ºä½ºÅ©¸³Æ®

´ÙÀ½¿¡ ÇÊ¿äÇÑ °ÍÀº, °ü·ÃÁþ´Â ºä½ºÅ©¸³Æ® "booklist.php" ÀÔ´Ï´Ù. À̰ÍÀº ÀϹÝÀûÀÎ PHP ½ºÅ©¸³Æ®¿Í °°½À´Ï´Ù¸¸, Çϳª¸¸ Â÷À̰¡ ÀÖ½À´Ï´Ù. Zend_View ÀνºÅϽºÀÇ ½ºÄÚÇÁ·Î ½ÇÇàµÇ´Â °ÍÀÔ´Ï´Ù. Áï $this ¿¡ÀÇ ÂüÁ¶´Â,Zend_View ÀÇ ÀνºÅϽºÀÇ ÇÁ·ÓÆÛƼ³ª ¸Þ¼Òµå¸¦ °¡¸®Å°°Ô µË´Ï´Ù (ÄÜÆ®·Ñ·¯¿¡ ÀÇÇØ¼­ ÀνºÅϽº¿¡ ´ëÀÔµÈ º¯¼ö´Â, Zend_View ÀνºÅϽºÀÇ public ÇÁ·ÓÆÛƼ°¡ µË´Ï´Ù). µû¶ó¼­, ±âº»ÀûÀÎ ºä½ºÅ©¸³Æ®´Â ÀÌ¿Í °°ÀÌ µË´Ï´Ù.


<?php if ($this->books): ?>

    <!-- Ã¥ÀÇ À϶÷ -->
    <table>
        <tr>
            <th>ÀúÀÚ</th>
            <th>ŸÀÌÆ²</th>
        </tr>

        <?php foreach ($this->books as $key => $val): ?>
        <tr>
            <td><?php echo $this->escape($val['author']) ?></td>
            <td><?php echo $this->escape($val['title']) ?></td>
        </tr>
        <?php endforeach; ?>

    </table>

<?php else: ?>

    <p>Ç¥½ÃÇϴ åÀÌ ¾ø½À´Ï´Ù.</p>

<?php endif;

º¯¼öÀÇ Ãâ·Â½Ã¿¡,"escape()" ¸Þ¼Òµå·Î À̽ºÄÉÀÌÇÁ 󸮸¦ Çϰí ÀÖ´Â °Í¿¡ ÁÖÀÇÇսôÙ.

41.1.3. ¿É¼Ç

Zend_View ÀÇ ¿É¼ÇÀ» ¼³Á¤Çϸé, ºä½ºÅ©¸³Æ®ÀÇ ÇൿÀ» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

  • basePath: ÇÏ ½ºÅ©¸³Æ®³ª ÇïÆÛ, ±×¸®°í ÇÊÅ͸¦ ¹èÄ¡ÇÏ´Â ±âÀú ÆÐ½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ´ÙÀ½°ú °°Àº µð·ºÅ丮 ±¸¼ºÀ» »óÁ¤Çϰí ÀÖ½À´Ï´Ù.

    
    base/path/
        helpers/
        filters/
        scripts/

    À̰ÍÀ» ¼³Á¤ÇÏ·Á¸é setBasePath() Àΰ¡ addBasePath(), ȤÀº constructor¡¡ ¡¡ ÀÇ ¿É¼Ç basePath (À»)¸¦ »ç¿ëÇÕ´Ï´Ù.

  • encoding: ÇÏ htmlentities() (ÀÌ)³ª htmlspecialchars() µî¿¡¼­ »ç¿ëÇÏ´Â ¹®ÀÚ ÀÎÄÚµùÀ» ³ªÅ¸³À´Ï´Ù. µðÆúÆ®´Â ISO-8859-1 (latin1) ÀÔ´Ï´Ù. setEncoding() Àΰ¡, constructor¡¡ ¡¡ ÀÇ ¿É¼Ç encoding ±×¸®°í ¼³Á¤ÇÕ´Ï´Ù.

  • escape: ÇÏ escape() ±×¸®°í »ç¿ëÇÏ´Â ÄݹéÀ» ³ªÅ¸³À´Ï´Ù.setEscape() Àΰ¡, constructor¡¡ ¡¡ ÀÇ ¿É¼Ç escape ±×¸®°í ¼³Á¤ÇÕ´Ï´Ù.

  • filter: (Àº)´Â, ºä½ºÅ©¸³Æ®¸¦ ·»´õ¸µ ÇÑ ´ÙÀ½¿¡ »ç¿ëÇÏ´Â ÇÊÅ͸¦ ³ªÅ¸³À´Ï´Ù. setFilter() Àΰ¡ addFilter(), ȤÀº constructor¡¡ ¡¡ ÀÇ ¿É¼Ç filter ±×¸®°í ¼³Á¤ÇÕ´Ï´Ù.

  • strictVars: (Àº)´Â, ÃʱâÈ­Çϰí ÀÖÁö ¾Ê´Â º¯¼ö¿¡ Zend_View (À¸)·ÎºÎÅÍ ¾×¼¼½º ÇÏ·Á°í ÇßÀ» ¶§¿¡ notice (ÀÌ)³ª warning (À»)¸¦ ¹ß»ý½Ã۵µ·Ï(µíÀÌ) ÇÕ´Ï´Ù. strictVars(true) Àΰ¡, ȤÀº constructor¡¡ ¡¡ ÀÇ ¿É¼Ç strictVars ±×¸®°í ¼³Á¤ÇÕ´Ï´Ù.

41.1.4. À¯Æ¿¸®Æ¼ ¸Þ¼Òµå

Åë»óÀº,assign() (¿Í)°ú render(), ȤÀº ÇÊÅÍ, ÇïÆÛ, ½ºÅ©¸³Æ®ÀÇ ÆÐ½º¿ëÀÇ ¼³Á¤ ¸Þ¼Òµå¸¸À¸·Î ÃæºÐÈ÷ ÃæºÐÇϰÚÁö¿ä. ±×·¯³ª,Zend_View (À»)¸¦ µ¶ÀÚÀûÀ¸·Î È®ÀåÇÏ°í ½ÍÀº °æ¿ì³ª ±× ³»ºÎ¿¡ ¾×¼¼½º ÇÏ°í ½ÍÀº °æ¿ì¸¦ À§Çؼ­, ÇÑÃþ ´õ ¸î°³ÀÇ ¸Þ¼Òµå¸¦ ÁغñÇϰí ÀÖ½À´Ï´Ù.

  • getVars() (Àº)´Â, ¼³Á¤ ¶°³¯ ¼ö ÀÖ¾î ¸ðµç º¯¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù.

  • clearVars() (Àº)´Â, ¸ðµç º¯¼öÀÇ °ªÀ» ¼Ò°ÅÇÕ´Ï´Ù. ºä½ºÅ©¸³Æ®¸¦ ÀçÀÌ¿ëÇÒ ¶§¿¡, Áö±Ý±îÁö »ç¿ëÇϰí ÀÖ´ø º¯¼ö¸¦ ³²°Ü µÎ°í ½ÍÀ» ¶§ µî¿¡ Æí¸®ÇÕ´Ï´Ù.

  • getScriptPath($script) (Àº)´Â, ÁöÁ¤ÇÑ ºä½ºÅ©¸³Æ®ÀÇ ÆÐ½º¸¦ ÃëµæÇÕ´Ï´Ù.

  • getScriptPaths() (Àº)´Â, µî·ÏµÇ¾î ¸ðµç ½ºÅ©¸³Æ® ÆÐ½º¸¦ ÃëµæÇÕ´Ï´Ù. script paths.

  • getHelperPath($helper) (Àº)´Â, ÁöÁ¤ÇÑ ÇïÆÛ Ŭ·¡½ºÀÇ ÆÐ½º¸¦ ÃëµæÇÕ´Ï´Ù.

  • getHelperPaths() (Àº)´Â, µî·ÏµÇ¾î ¸ðµç ÇïÆÛ ÆÐ½º¸¦ ÃëµæÇÕ´Ï´Ù.

  • getFilterPath($filter) (Àº)´Â, ÁöÁ¤ÇÑ ÇÊÅÍ Å¬·¡½ºÀÇ ÆÐ½º¸¦ ÃëµæÇÕ´Ï´Ù.

  • getFilterPaths() (Àº)´Â, µî·ÏµÇ¾î ¸ðµç ÇÊÅÍ ÆÐ½º¸¦ ÃëµæÇÕ´Ï´Ù.