Smarty

Smarty est unu motore de mollos web iscritu in PHP. Smarty permitit de separare su còdighe PHP, dae su còdighe HTML (sa cara gràfica), e de generare cuntènnidos web pro mèdiu de su càmbiu de is Smarty tag a a intro de su documentu cun su balore de variàbiles e àteru.

Unu tag (marcadore) est una diretiva, serrada intro caràteres ispetziales, interpretada dae su motore de Smarty. Custas diretivas podent èssere variàbiles, identificadas dae su sìmbulu de su dollaru ($), funtziones, o fintzas istrutziones de controllu de su flussu. Smarty permitit a sos programmadores PHP de definire funtziones de inclùdere in sos marcadores matessi de Smarty.

 Mollu-Vista-Controllore 
S'astratzione creada dae Smarty cunsentit de separare de s'in totu s'interfàtzia gràfica de una pàgina web (sa presentada) dae su back-end in PHP, donende sa possibilidade de isvilupare aplicatziones prus organizadas e elegantes. S'impreu de Smarty fatzìlitat a is isvilupadores PHP a pònnere in òpera su mollu de isvilupu Mollu-Vista-Controllore (MVC), chi presentat medas avantàgios: est difatis possìbile "cuare" a sos disinnadores web sa lògica de programmatzione de unu situ, mentras sos programmadores ant a traballare sena si curare de s'interfàtzia gràfica.

 Caraterìsticas 
Smarty permitit sa programmatzione de mollos pro mèdiu de una sèrie de caraterìsticas, comente:

 espressiones regulares
 foreach, while
 if, elseif, else
 mudadores de variàbile - pro esempru {$variàbile|nl2br}
 funtziones creadas dae s'impitadore
 càrculu matemàticu a s'internu de su mollu
 eredade de is mollos

e medas àteras.

 Còdighe de esèmpiu 
Smarty separat su còdighe PHP de s'HTML, duncas amus a tènnere duos archìvios. Su primu est index.tpl:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//IT" "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> {* Custu est unu cummentu chi NO at a èssere  visìbile in su còdighe HTML *}

<p>{$body_text}</p>

</body><!-- Custu est unu cummentu chi at a èssere  visìbile in su còdighe HTML -->
</html>In su còdighe de sa lògica (es. index.php) est possìbile tzarrare Smarty pro impreare su mollu: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->assign('title_text', "TÌTULU: Un'esèmpiu de impreu de Smarty...");
$smarty->assign('body_text', "BODY: Custu est su messàgiu assetiadu cun assign()");

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

 Ligàmenes esternos 

 Giassu ufitziale

Categoria:Informàtica