[Çʵ¶] ÅÛÇø´ È°¿ë±âÃÊ
¸ñÂ÷
  1. ÅÛÇø´?
  2. ÅÛÇø´ ű×
  3. ÅÛÇø´ º¯¼ö Ãâ·Â
  4. ·çÇÁ(1)
  5. ·çÇÁ(2) - ¿¹¾àº¯¼ö
  6. ºÐ±â - if
  7. ÇÏÀ§ÅÛÇø´ ÀÎŬ·çµå
  8. ÁÖ¼®
  1. ÅÛÇø´?

    ÇÁ·Î±×·¥°ú µðÀÚÀÎÀ» ºÐ¸®ÇÏ¿© µ¿Àûµ¥ÀÌŸ 󸮸¦ À§ÇÑ °£°áÇÑ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù.
  2. ÅÛÇø´ ű×

    ÅÛÇø´ ű״ ÅÛÇø´ ÆÄÀϳ»¿¡¼­ ÅÛÇø´¿£ÁøÀÌ Çؼ®ÇÒ À§Ä¡¸¦ Ç¥½ÃÇÕ´Ï´Ù.
    Çؼ®ÇÒ ³»¿ëÀÌ º¯¼öÀ̵ç Á¦¾î¸í·ÉÀÌµç °ü°è¾øÀÌ { } , <!--{ } , { }--> , <!--{ }--> ¸ðµÎ°¡ À¯È¿ÇÑ ÅÛÇø´ ű×ÀÔ´Ï´Ù.
  3. ÅÛÇø´ º¯¼ö Ãâ·Â

    ¸í·É¾î ÀÇ¹Ì »ç¿ë¹ý
    = ÅÛÇø´º¯¼öÀÇ °ªÀ» Ãâ·Â {= template_variable }
    ÅÛÇø´ÅÂ±× ³»¿¡¼­ ÇÔ¼ö¸¦ »ç¿ëÇÏÁö ¾ÊÀ» ¶§´Â {=title} ´ë½Å {title} °ú °°ÀÌ Ãâ·Â¸í·É¾î¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù.
    ¿¹Á¦
    index.php
    <?php
    $tpl->assign(array(
        'title'  =>'First Template_',
        'content'=>'Fill me in',
    ));
    ?>
    index.htm
    <html>
    <head>
    <title>{title}</title>
    </head>
    <body>
    {content}
    </body>
    </html>
    >>output
    <html>
    <head>
    <title>First Template_</title>
    </head>
    <body>
    Fill me in
    </body>
    </html>
  4. ·çÇÁ(1)

    ¸í·É¾î ÀÇ¹Ì »ç¿ë¹ý
    @ ·çÇÁÀÇ ½ÃÀÛ {@ loop_id}
    : ·çÇÁ°¡ µ¹Áö ¾Ê¾ÒÀ» ¶§ Ãâ·Â (¿É¼Ç) {:}
    / ·çÇÁÀÇ ³¡ {/}
    ±âº» ·çÇÁ ¿¹Á¦
    index.php
    <?php
    $loop = array(
        array(
            'name' =>'banana',
            'color'=>'yellow',
        ),
        array(
            'name' =>'apple',
            'color'=>'red',
        ),
    );
    $tpl->assign('list', $loop);
    ?>
    index.htm
    <table>
    <!--{@ list}-->
    <tr><td>{list.name}</td><td>{list.color}</td></tr>

    <!--{/}-->
    </table>
    >>output
    <table>
    <tr><td>banana</td><td>yellow</td></tr>
    <tr><td>apple</td><td>red</td></tr>

    </table>
    Áßø ·çÇÁ ¿¹Á¦
    index.php
    <?php
    $loop1 = array(
        array(
            'name' =>'sport',
            'item' => array(
                array(
                    'name'=>'pingpong',
                    'num' =>5,
                ),
                array(
                    'name'=>'running',
                    'num' =>16,
                ),
            ),
        ),
        array(
            'name' =>'book',
            //'item' => null
        ),
    );
    $tpl->assign('group', $loop1);
    ?>
    index.htm
    <table>
    <!--{@ group }-->
    <tr>
        <td> group: { group.name }</td>
        <td> item:
        <!--{@ item}-->
            {group.name}-{item.name}({item.num})
        <!--{:}-->
            -- if no item, print this --
        <!--{/}-->
        </td>
    </tr>
    <!--{/}-->

    </table>
    >>output
    <table>
    <tr>
        <td> group: sport</td>
        <td> item:
            sport-pingpong(5)
            sport-running(16)
        </td>
    </tr>
    <tr>
        <td> group: book</td>
        <td> item:
            -- if no item, print this --
        </td>
    </tr>
    <tr>

    </table>
    ÃÖ»óÀ§·çÇÁÀÇ º¯¼öÀ̸é { .name }, Áßø·çÇÁÀÇ º¯¼ö¸é { ..name } °ú °°ÀÌ ·çÇÁ ¾ÆÀ̵𸦠»ý·«ÇÏ°í ·çÇÁº¯¼ö¸¦ ª°Ô Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¶§, Á¡ÀÇ °³¼ö´Â ÁßøÀÇ ±íÀ̸¦ ³ªÅ¸³À´Ï´Ù.
    ·çÇÁ ¾ÆÀ̵ð »ý·« ¿¹Á¦
    index.htm
    <table>
    <!--{@ group }-->
    <tr>
        <td> group: {.name}</td>
        <td> item:
        <!--{@ item}-->
            {.name}-{..name}({..num})
        <!--{:}-->
            -- if no item, print this --
        <!--{/}-->
        </td>
    </tr>
    <!--{/}-->

    </table>
  5. ·çÇÁ(2)

    ¡Ø  index_ size_

    ¿¹¾àº¯¼ö ¼³¸í
    index_ 0 ºÎÅÍ ½ÃÀÛ, ·çÇÁ°¡ ¹Ýº¹ÇÒ ¶§ 1 ¾¿ Áõ°¡
    size_ ·çÇÁÀÇ Àüü ¹Ýº¹ ȸ¼ö
    index_ size_ ¿¹Á¦
    index.php
    <?php
    $loop = array(
        array(
            'title' =>'I Wish..',
        ),
        array(
            'title' =>'Love Revolution 21',
        ),
        array(
            'title' =>'The Peace',
        ),
    );
    $tpl->assign('list',  $loop);
    $tpl->assign('start', 10);
    ?>
    index.tpl
    <div>num of list: { list.size_ }</div>
    <!--{@ list}-->
    <div>{ list.index_ + start }th. { list.title }</div>
    <!--{/}-->
    >>output
    <div>num of list: 3</div>
    <div>10th. I Wish..</div>
    <div>11th. Love Revolution 21</div>
    <div>12th. The Peace</div>
    size_ ´Â ÇØ´ç·çÇÁ ¹Û¿¡¼­µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇØ´ç·çÇÁ ¹Û¿¡¼­ »ç¿ëÇÒ ¶§´Â {.size_} ó·³ ·çÇÁ¾ÆÀ̵𸦠»ý·«ÇÒ ¼ö´Â ¾ø½À´Ï´Ù.

    ¡Ø  key_ value_

    ¿¹¾àº¯¼ö ¼³¸í
    key_ ·çÇÁ·Î ÇÒ´çµÈ ¹è¿­ÀÇ Å°
    value_ ·çÇÁ·Î ÇÒ´çµÈ ¹è¿­ÀÇ °ª
    key_ value_ ¿¹Á¦
    index.php
    <?php
    $loop = array('apple'=>'red', 'banana'=>'yellow', 30 =>'unknown');
    $tpl->assign('fruit', $loop);
    ?>
    index.tpl
    <!--{@ fruit}-->
    <div>{fruit.index_} - {fruit.key_} - {fruit.value_}</div>
    <!--{/}-->

    <div>num of fruit: {fruit.size_}</div>
    >>output
    <div>0 - apple - red</div>
    <div>1 - banana - yellow</div>
    <div>2 - 30 - unknown</div>

    <div>num of list: 3</div>
  6. ºÐ±â - if

    ¸í·É¾î ÀÇ¹Ì »ç¿ë¹ý
    ? if {? expression }
    : elseif, else (¿É¼Ç) {: expression }, {:}
    / endif {/}
    ¹®¸Æ¿¡ ÀÇÇØ, ':' Àº ºÐ±âÀÇ else if, else ¶Ç´Â ·çÇÁÀÇ else ·Î, '/' Àº ·çÇÁ³ª ºÐ±âÀÇ Á¾°á¹®À¸·Î Çؼ®µË´Ï´Ù.
    ºÐ±â ¿¹Á¦
    index.php
    <?php
    $tpl->assign('fruit', 'banana');
    ?>
    index.tpl
    <!--{? fruit=='apple' || person=='santa' }-->
    <div> red </div>
    <!--{: fruit=='banana' }-->
    <div> yellow </div>
    <!--{: fruit=='orange' }-->
    <div> orange </div>
    <!--{:}-->
    <div> unknown </div>
    <!--{/}-->
    >> output
    <div> yellow </div>
    ·çÇÁ-ºÐ±â Áßø ¿¹Á¦
    index.php
    <?php
    $page_loop = array(
        1=>'page1.php',
        2=>'page2.php',
        3=>'page3.php',
    );
    $tpl->assign(array(
        'current'=>2,
        'page'   =>$page_loop,
    ));
    ?>
    index.tpl
    <!--{@ page}-->
        <!--{? page.key_ == current }-->
            [ { page.key_ } ]
        <!--{:}-->
            <a href='{ page.value_ }'>[ { page.key_ } ]</a>
        <!--{/}-->
    <!--{:}-->
        -- no page --
    <!--{/}-->
    >>output
            <a href='page1.php'>[ 1 ]</a>
            [ 2 ]
            <a href='page3.php'>[ 3 ]</a>
    ºÐ±â¿Í ºÐ±â, ºÐ±â¿Í ·çÇÁ ¿ª½Ã ÀÚÀ¯·Ó°Ô ÁßøÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
  7. ÇÏÀ§ÅÛÇø´ ÀÎŬ·çµå

    ¸í·É¾î ÀÇ¹Ì »ç¿ë¹ý
    # ÇÏÀ§ÅÛÇø´ÆÄÀÏ ÀÎŬ·çµå {# file_id }
    ¿¹Á¦
    directory
    /
    ¦±¦¬ home
       ¦±¦¬ htdocs
          ¦²¦¬ index.php
          ¦²¦¬ _template
          ¦²¦¬ ¦²¦¬ layout.htm
          ¦²¦¬ ¦²¦¬ left.htm
          ¦²¦¬ ¦±¦¬ intro
          ¦²¦¬    ¦±¦¬ intro.htm
          ¦±¦¬ _compile
              ¦±¦¬ ...
    index.php
    <?php
    $tpl->define(array(
        'body' => 'body.htm',
        'left' => 'left.htm',
        'main' => 'intro/intro.htm',
    ));
    $tpl->assign(array(
        'link'  => 'xtac.net',
        'text1' => 'fine',
        'text2' => 'thanks',
    ));
    $tpl->print_('body');
    ?>
    body.htm
    <table>
    <tr><td> {# left} </td><td> {# main} </td></tr>
    </table>
    left.htm
    { link }
    intro/intro.htm
    <div>{ text1 }..{ text2 }</div>
    >>output
    <table>
    <tr><td> xtac.net </td><td> <div>fine..thanks</div> </td></tr>
    </table>
  8. ÁÖ¼®

    ¡Ø  ²¿¸®¸»Çü ÁÖ¼®

    ¸í·É¾î ÀÇ¹Ì »ç¿ë¹ý
    // º¯È¯½Ã ű׳» '//' ÀÌÇϹ®ÀÚ »èÁ¦ { any_template_code // any_string }
    ÅÛÇø´Äڵ尡 À¯È¿ÇÏÁö ¾Ê°Å³ª À̽ºÄÉÀÌÇÁµÇ¾úÀ» ¶§´Â »èÁ¦µÇÁö ¾Ê½À´Ï´Ù.
    ²¿¸®¸»Çü ÁÖ¼® ¿¹Á¦
    index.tpl
    <table>
    <!--{@ list // loop starts!! }-->
    <tr>
        <td>{start - .index_ // list number }</td>
        <td>{.title}</td>
    </tr>
    <!--{/// list ends!! }-->
    </table>

    ¡Ø  ºí·°Çü ÁÖ¼®

    ¸í·É¾î ÀÇ¹Ì »ç¿ë¹ý
    * º¯È¯ÆÄÀÏ¿¡¼­ »èÁ¦µÊ {* any_string *}
    ºí·°Çü ÁÖ¼® ¿¹Á¦
    index.tpl
    <!--{* Template {comments} are {removed} in compiled file *}-->
    <table>
    <tr>
        <td width="50px">
            <!--{ template * expression / overflows + width50px }-->{*no*}
        </td>
        <td width="250px">
            { width250px & is | enough }
        </td>
    </tr>
    </table>
    {* *} , <!--{* *} , {* *}--> , <!--{* *}--> ¸ðµÎ À¯È¿ÇÑ ÅÛÇø´ ÁÖ¼®ÀÔ´Ï´Ù.