Ich habe in diesen Tagen gesehen, wie Smarty 3 Alpha auf den Markt kommt, also habe ich mir die Zeit genommen, einen Besuch und eine Umfrage durchzuführen. Der folgende Text stammt im Wesentlichen aus der Readme-Datei:
Grundlegende Dateistruktur
index.php
/libs/
Smarty.class.php #Hauptdatei
/libs/sysplugins/ #Internes Plugin
intern.*
/plugins/ #Externes Plugin, frei erweiterbar
function.mailto.php
modifier.escape.php
/templates/ #Template, kann ein reines PHP oder ein traditionelles Smarty-Template sein
index.tpl
Index_view.php ist ein klassisches Smarty-Calling-Code-Snippet:
require('Smarty.class.php');
$smarty=newSmarty;
$smarty->assign('foo','bar');
$smarty->display('index.tpl');
Es scheint keinen Unterschied zur Vorgängerversion
SINGLETON
zu geben
Ist das sinnvoll?
Codeausschnitt:
$smarty= Smarty::instance();
Die Smarty-Vorlage vor der Vorlage entspricht der Neudefinition einer Reihe von Tag-Sprachen. Daher bietet smarty3 ein neues Vorlagenformular, das PHP-Syntaxvorlagen direkt unterstützt.
Aber es stellt sich die Frage: Müssen wir weiterhin Vorlagen verwenden?
Ein Beispiel für das Zitieren von PHP-Typvorlagen:
Codeausschnitt:
$smarty->display('php:mytemplate.tpl');
Vertraute Syntax kann direkt in der Vorlage verwendet werden: <?=$foo?> <?=$bar?>
Wenn Sie PHP-Vorlagen verwenden, müssen Sicherheitsprobleme selbst gelöst werden. Für reifere Teams stellt dies jedoch kein Problem dar.
Darüber hinaus fühlt sich die neue Unterstützung für String-Typ-Templates kräftiger an und auch der Weg weg von Templates rückt immer weiter in die Ferne:
Code-Schnipsel:
$smarty->display('string:Das ist meine Vorlage, {$foo}!');
Verwandte Links von smarty3
Smarty 3 Alpha mit SVN – Es ist recht wirtschaftlich, den von Googlecode bereitgestellten SVN-Dienst zu wählen
Smarty 3-Entwickler-Mailinggruppe