Smarty
Smarty, PHP ile yazılmış bir şablon motorudur. Özellikle web geliştirirken tasarım ve yazılım süreçlerinin birbirinden bağımsız hale getirilmesini sağlayan bir araç olarak tanınmaktadır.[1]
Geliştirici(ler) | Monte Ohrt, Messju Mohr |
---|---|
Güncel sürüm | 3.0.6 |
Programlama dili | PHP |
Tür | Şablon motoru |
Lisans | LGPL |
Resmî sitesi | www![]() |
Kod deposu |
Özellikler
değiştirBirçok üst düzey şablonun programlama özelliklerini destekler:[2]
- Control flow, foreach
- if, elseif, else gibi koşullu ifadeleri kullanabilme
- Değişken oluşturabilme ve özelleştirme - Örnek {$variable|nl2br}
- Hazır fonksiyonlar - Örnekler {html_select_date start_year='-5' end_year='+5'}
- Fonksiyonları kendi düzenleyecileri ile oluşturabilme imkânı / fonksiyonlar / çıkış filtreleri
- Sayfaları önbelleğe alabilme
Smarty örneği
değiştirSmarty etiketleri bir HTML şablonunda aşağıdaki gibi kullanılmaktadır:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html>
<head>
<title>{$title_text|escape}</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body> {* Sayfada görünmeyen HTML yorumu *}
{$body_html}
</body>
</html>
HTML şablonda kullanılmak üzere smarty kodu aşağodaki gibi geliştirilmelidir.
define('SMARTY_DIR', 'smarty-2.6.22/' );
require_once(SMARTY_DIR . 'Smarty.class.php');
$smarty = new Smarty();
$smarty->template_dir = './templates/';
$smarty->compile_dir = './templates/compile/';
$smarty->assign('title_text', 'TITLE: Smarty için basit bir örnek ...');
$smarty->assign('body_html', '<p>BODY: Bu mesaj assign() fonksiyonu kullanarak ayarlanmaktadır</p>');
$smarty->display('index.tpl');
Daha fazla bilgi
değiştir- "Smarty-the compiling PHP template engine" (PDF). 9 Nisan 2011 tarihinde kaynağından (PDF) arşivlendi.
- Hasin Hayder, J. P. Maia, Lucian Gheorghe (2006). Smarty PHP Template Programming And Applications. ISBN 978-1904811404.
Kaynakça
değiştir- ^ Parr, Terence John (2004). Enforcing strict model-view separation in template engines. Proceedings of the 13th international conference on World Wide Web. ISBN 1-58113-844-X.
- ^ "Is Smarty right for me?". 11 Ağustos 2010 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Mart 2011.
Dış bağlantılar
değiştir- "Resmî site". 17 Aralık 2011 tarihinde kaynağından arşivlendi.
- Cezar Floroiu. "Smarty ile PHP Şablonu". Smarty Belgeleri. 21 Şubat 2012 tarihinde kaynağından arşivlendi.