Smarty

Smarty
PembangunMonte Ohrt, Messju Mohr
Keluaran stabil
2.6.19 / 11 Feb 2008
Repositori
  • github.com/smarty-php/smarty
Sunting ini di Wikidata
JenisEnjin templat
LesenLGPL
Tapak webwww.smarty.net

Smarty adalah satu sistem templat web berasaskan PHP. Smarty dipromosikan terutamanya sebagai sebuah alat untuk pengasingan usaha, yang merupakan strategi rekaan untuk sesetengah penggunaan.[1][2]

Contoh kod

Memandangkan Smarty mengasingkan PHP daripada HTML, maka terdapat dua fail:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
   <title>{$title_text}</title>
   <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
</head>

<body> {* Ini adalah sedikit komen yang tidak akan dilihat di dalam sumber HTML *}

<p>{$body_text}</p>

</body><!-- Ini adalah sedikit komen yang akan dilihat di dalam sumber HTML -->
</html>

Dalam kod logik perniagaan Smarty boleh diset untuk menggunakan templat ini:

define('SMARTY_DIR', 'smarty-2.6.9/' );
require_once(SMARTY_DIR . 'Smarty.class.php');

$smarty = new Smarty();
$smarty->template_dir = './templates/';
$smarty->compile_dir = './templates/compile/';
$smarty->cache_dir = './templates/cache/';
$smarty->caching = false;
$smarty->error_reporting = E_ALL; // TINGGALKAN E_ALL SEMASA PEMBINAAN
$smarty->debugging = true;

$smarty->assign('title_text', 'TITLE: Ini adalah contoh asas Smarty ...');
$smarty->assign('body_text', 'BODY: Ini adalah mesej yang disetkan menggunakan assign()');

$smarty->display('index.tpl');

Catatan dan rujukan

  1. ^ Smarty mengasingkan kod PHP, (selalunya diwakilkan sebagai logik perniagaan) daripada HTML, (selalunya diwakilkan sebagai logik penyampaian).
  2. ^ Parr, Terence John (2004). Enforcing strict model-view separation in template engines. Proceedings of the 13th international conference on World Wide Web. 1-58113-844-X.

Pautan luar

  • Tapak rasmi
  • PHP Templating with Smarty oleh Cezar Floroiu - tutorial Smarty
  • Smarty vs. XML/XSLT - dari DevPapers.com oleh Sergey Makogon
  • Helaian Elat Smarty Helaian Elat Smarty untuk pereka templat dan pengatur cara
  • Timestretch: PHP, MySQL, and Smarty Programming Diarkibkan 2007-06-27 di Wayback Machine - Lihat juga laman PHP2 untuk lebih lanjut.