PHP – Classe per gestire il layout delle pagine
|
require_once(”Template.class.php”); try { $tpl->addFiles( $tpl->setVariable(”TITLE”, “Pagina di test”); $tpl->setVariable(”HEADER_INDEX”, $tpl->setVariable(”FOOTER”, $tpl->parseTemplate(”FOOTER_INDEX”, “footer”, true); $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, “column”); $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->parseTemplate(”CONTENT_TABLE”, “row”); $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, “column”); $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->setVariable(”CONTENT_COLUMN”, $tpl->parseTemplate(”CONTENT_ROW”, $tpl->parseTemplate(”CONTENT_TABLE”, $tpl->parseTemplate(”CONTENT_DIV”, “table”); $tpl->setVariable(”ALIGN_DIV”, “center”); $tpl->parseTemplate(”CONTENT_INDEX”, “div”); $tpl->parseTemplate(”output”, “principal”); $tpl->getOutput(”output”, true); } catch (Exception $ex) { echo “è stata generata la seguente eccezione: “. } ?> |
Andiamo ad analizzare il precedente esempio:
Come inizio importiamo la classe Template e di seguito creiamo un oggetto che è istanza di quest’ultima.
Tramite la funzione addFiles carichiamo i template da utilizzare nell’oggetto.
Subito dopo troviamo righe di codice per settare il valore di una variabile di template:
$tpl->setVariable(”CONTENT_COLUMN”, “cella 10″);
oppure effettuare il parsing si un template:
$tpl->parseTemplate(”CONTENT_ROW”, “column”, true);
in tutti e due questi metodi se si applica al terzo parametro (di default settato a false) il valore true, il nuovo contenuto sarebbe accodato a quello già esistente nella variabile.
Le ultime righe degne di interesse sono:
$tpl->parseTemplate(”output”, “principal”);
$tpl->getOutput(”output”, true);
Nella prima parsiamo il template principale, contenente l’HTML da visualizzare, in una variabile scelta da noi, in questo caso di nome output, mentre nella seconda riga facciamo in modo che il contenuto di output sia mandato a video invece che in una variabile php.
Tutto il codice è inserito all’interno di un’istruzione try and catch in modo da intercettare eventuali eccezioni e gestirle come meglio crediamo.
Per ultimo ricordo che le variabili di template devono essere tutte diverse, nel senso che se in due template abbiano una variabile con lo stesso nome, per esempio [__IMMETTI_TESTO__] tutte e due conterranno alla fine del procedimento di sostituzione/parsing l’ultimo valore immesso, e non magari due valori distinti.
Per ovviare a questo inconveniente consiglio di inserire un prefisso identificativo davanti ad ogni variabile. Nel caso precedente se le due variabili sono all’interno di due template di nome div.html e index.html, la soluzione sarà chiamarle [__DIV_IMMETTI_TESTO__] e [__INDEX_IMMETTI_TESTO__] e non ci saranno più problemi.
Buon divertimento, e se ritenete questo tutorial interessante fate un link sul vostro sito e/o segnalatelo agli amici.






Loading ...





Commenti recenti