스마트한 기능---플러그인
1) sysplugins 내장 기능은 수정이 허용되지 않습니다
2) 사용자 정의 기능 플러그인을 수정할 수 있습니다
1. 캡처는 콘텐츠를 캡처하지만 출력하지는 않습니다
구문:
{캡처 이름='var'}
내용
{/캡처}
이름 : 지정한 변수에 내용을 저장합니다
{$smarty.capture.var}
템플릿에서 많은 양의 콘텐츠를 반복적으로 출력해야 하는 경우 캡처를 사용하여 캡처하는 것을 고려할 수 있습니다.
2.config_load 구성 파일을 로드합니다
{config_load file="file" section="section"}
파일: 구성 파일 이름
섹션: 선택 매개변수가 참조되는 구성 섹션은 무엇인가요?
인용 구문:
{#var#}
{$smarty.config.var}
3. foreach, foreachelse는 배열을 탐색하는 데 사용됩니다
구문:
{foreach from=배열 키=키 이름=이름 항목=콘텐츠}
{foreachelse} 순회하려는 배열에 요소가 없는 경우 foreachelse 다음 명령문을 실행합니다.
{/foreach}
시작: 순회할 배열
항목: 순회된 키 값
키: 순회된 키 이름
이름: foreach 문의 이름을 지정하세요.
Foreach 내장 변수
$smarty.foreach.name.index: 인덱스는 0부터 시작합니다
$smarty.foreach.name.iteration : 인덱스는 1부터 시작
$smarty.foreach.name.first: 루프가 처음 실행될 때 이 값은 true입니다
$smarty.foreach.name.last : 루프가 마지막으로 실행될 때 이 값은 true입니다
$smarty.foreach.name.total: 총 루프 수
4. 다른 템플릿 파일에 참조 포함
{include file="file" 할당="var" [var ...]}
파일: 가져올 템플릿 파일
할당: 결과를 저장하되 이번에는 출력하지 않음
[var …]: 선택적 매개변수, 템플릿 파일에 전달됩니다.
5. include_php에는 PHP 파일이 포함되어 있습니다
{ include_php file="file" 할당="var" Once="true|false"}
파일: 가져올 php 파일
할당: 출력 결과를 저장하되 이번에는 출력하지 않음
한 번: 한 번만 포함하는지 여부 true: 예 false: 아니요
이 기능은 smarty2.6에서 사용할 수 있으나 3.0에서는 제거될 예정입니다. 이 기능을 계속 사용하려면 SmartyBC.class.php 클래스 파일을 참조하세요
6. 삽입 템플릿에서 PHP 함수를 실행합니다
구문:
{ 이름 삽입="func" [var ...] }
이름: 호출되는 PHP 함수의 이름
[var ...]: 함수 호출 시 매개변수를 지정합니다. 선택적 매개변수
Insert와 include_php는 동일합니다. 이것들은 모두 2.6의 함수입니다. 3.0에서는 이 함수가 SmartyBC.class.php 파일에 있습니다.
참고: insert가 참조하는 PHP 함수의 이름에는 insert_라는 접두사가 붙어야 합니다.
7. if else if else
{if}
{elseif}
{else}
{/if}
8. ldelim 및 rdelim 템플릿에서 { }의 이스케이프 문자
{ldelim}
{rdelim}
9. 리터럴 리터럴 태그의 내용은 smarty에서 구문 분석되지 않습니다.
{리터럴}
…
{/리터럴}
10.php PHP 태그 한 쌍으로 PHP 코드를 작성할 수 있습니다
{php}
…
{/php}
이상은 관련 내용을 포함하여 php-Smarty-4(21)을 소개하고 있으니 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.