phpsource/템플릿2008. 7. 16. 01:07
written: Jul 15 2008
템포2 사용방법
아래와 같은 순서를 통해 템포2를 사용할 수 있습니다.
  1. 템플릿 문서 준비하기
  2. 템포2 클래스 파일 인클루드하기
  3. 클래스의 객체 생성하기
  4. 템플릿 문서를 파싱(parse)하기
  5. 변수 할당하기
  6. 블록요소 할당(assign)하기
  7. 할당된 템플릿 문서를 출력(output)하기
1. 템플릿 문서 준비하기
템플릿 문서(파일 또는 문자열)는 기본적으로 HTML 문서로  변수와 다이나믹 블록을 포함하고 있습니다. 변수는 별도의 변수형식을 제공하지 않으며 PHP에서 제공하는 <?=$변수명?>이 같은 형식을 그대로 이용합니다. 다이나믹 블록은 <tempo id="블록요소명" 속성>블록요소내용</tempo>와 같은 형식의 태그를 이용하여 템플릿 문서를 작성합니다.
[code html;gutter:false] <table> <tr> <th>column1</th> <th>column2</th> <th>column3</th> </tr> <tempo id="eLoop"> <tr> <td><?=$column1?></td> <td><?=$column2?></td> <td><?=$column3?></td> </tr> </tempo> </table> [/code]
2. 템포2 클래스 인클루드하기
가장 먼저 템포2 클래스 파일(class.tempo2.php)를 require_once() 또는 include_once()를 이용하여 인클루드합니다.
[code php;gutter:false] require_once('somewhere/class.Tempo2.php'); [/code]
3. 클래스의 객체 생성하기
new 연산자를 사용하여 템포2 클래스의 객체를 생성화합니다. PHP4 버전에서는 반드시 참조연산자(&)를 사용하여야 합니다.
[code php;gutter:false] $tempo = &new Tempo2; [/code]
4. 템플릿 문서를 파싱(parse)하기
템플릿 문서(파일 또는 문자열)를 parse() 또는 parse_str() 메쏘드를 사용하여 파싱합니다. 첫번째 인수는 템플릿 핸들이고 두번째 인수는 템플릿 문서(파일명 또는 문자열)를 지정합니다.
[code php;gutter:false] $tempo->parse('eRoot', 'templates/tempo.sample.htm'); [/code]
템플릿 문서를 파싱할 때 문서 내에 포함된 다이나믹 블록요소들은 별도의 객체로 생성됩니다. 각 블록요소 객체는 블록요소명을 키로 하는  el 멤버를 통해 접근할 수 있습니다. 템플릿 문서도 최상위 블록요소로 취급되며 최상위 블록요소명는 parse() 메쏘드의 첫번째 인수로 지정된 템플릿 핸들이 됩니다. 템플릿 핸들 'eRoot'와  블록요소명 'eLoop'에 해당하는 각 객체를 접근하기 위한 예를 들어보면 아래와 같습니다.
[code php;gutter:false] $tempo->el['eRoot']->innerTPL; $tempo->el['eLoop']->innerTPL; [/code]
5. 변수 할당하기
PHP의 전역변수를 이용하여 그 값을 할당합니다.
[code php;gutter:false] $column1 = 'apple'; $column2 = 'banana'; $column3 = 'orange'; [/code]
6. 블록요소 할당(assign)하기
최상위 블록요소인 템플릿 문서를 포함한 모든 블록요소에 해당하는 객체를 통해 블록요소 내용을 할당합니다.
[code php;gutter:false] $tempo->el['eLoop']->assign(''); for ($i=0; $i<3; $i++) { $tempo->el['eLoop']->assign('.'); } $tempo->el['eRoot']->assign(); [/code]
7. 할당된 문서를 출력(output)하기
템플릿 문서를 할당할 때와 마찬가지로 블록단위로 출력하게 됩니다.
[code php;gutter:false] $tempo->el['eRoot']->output(); [/code]

'phpsource > 템플릿' 카테고리의 다른 글

{템포2}4.멤버함수  (0) 2008.07.16
{템포2}3.템플릿 문서  (0) 2008.07.16
{템포2}1.소개  (0) 2008.07.16
{후키템플릿}8.1.필터 기능  (0) 2008.05.31
{Tempo}6.Download  (0) 2007.09.01
Posted by 방글24