요즘 스마티3알파의 등장을 보고 시간을 내어 방문 및 설문조사를 해보았습니다. 다음 텍스트는 기본적으로 Readme에서 가져온 것입니다.
기본 파일 파일 구조
index.php
/libs/
Smarty.class.php #메인 파일
/libs/sysplugins/ #내부 플러그인
내부.*
/plugins/ #외부 플러그인, 자유롭게 확장 가능
function.mailto.php
modifier.escape.php
/templates/ #Template, 순수 PHP 또는 전통적인 스마트 템플릿일 수 있습니다.
index.tpl
Index_view.php는 전형적인 스마트 호출 코드 조각입니다:
require('Smarty.class.php');
$smarty=새스마트;
$smarty->할당('foo','bar');
$smarty->display('index.tpl');
SINGLETON
과 별 차이가 없는 것 같습니다.
이것이 말이 되나요?
코드 조각:
$smarty= 스마티::instance();
템플릿 이전의 smarty 템플릿은 태그 언어 집합을 재정의하는 것과 동일하므로 smarty3에서는 PHP 구문 템플릿을 직접 지원하는 새로운 템플릿 형식을 제공합니다.
하지만 질문이 생깁니다. 여전히 템플릿을 사용해야 합니까?
PHP 유형 템플릿 인용 예:
코드 조각:
$smarty->display('php:mytemplate.tpl');
익숙한 구문을 템플릿에서 직접 사용할 수 있습니다: <?=$foo?> <?=$bar?>
PHP 템플릿을 사용하는 경우 보안 문제는 스스로 해결해야 합니다. 하지만 이는 성숙한 팀에게는 문제가 되지 않습니다.
또한 문자열 유형 템플릿에 대한 새로운 지원이 더욱 강력해졌으며 템플릿에서 멀어지는 경로도 점점 더 멀어지고 있습니다.
코드 조각:
$smarty->display('string:이것은 내 템플릿, {$foo}입니다!');
smarty3 관련 링크
SVN이 포함된 Smarty 3 Alpha--googlecode에서 제공하는 svn 서비스를 선택하는 것이 매우 경제적입니다.
smarty 3 개발자 메일링 그룹