J'ai vu l'émergence de smarty 3 alpha ces jours-ci, j'ai donc pris le temps de faire une visite et une enquête. Le texte suivant provient essentiellement de son fichier Lisez-moi :
Structure de fichier de base
index.php
/libs/
Smarty.class.php #Fichier principal
/libs/sysplugins/ #Plugin interne
interne.*
/plugins/ #Plugin externe, peut être étendu librement
fonction.mailto.php
modifier.escape.php
/templates/ #Template, peut être du php pur ou un modèle smarty traditionnel
index.tpl
Index_view.php est un extrait de code d'appel intelligent classique :
require('Smarty.class.php');
$smarty=nouveauSmarty;
$smarty->assign('foo','bar');
$smarty->display('index.tpl');
Il ne semble y avoir aucune différence avec la version précédente
SINGLETON
Est-ce que cela a du sens ?
Extrait de code :
$smarty= Smarty::instance();
Le modèle smarty avant le modèle équivaut à redéfinir un ensemble de langages de balises, donc smarty3 fournit un nouveau formulaire de modèle qui prend directement en charge les modèles de syntaxe PHP.
Mais la question se pose : est-il encore nécessaire d’utiliser des modèles ?
Un exemple de citation de modèles de type PHP :
extrait de code :
$smarty->display('php:mytemplate.tpl');
Une syntaxe familière peut être utilisée directement dans le modèle : <?=$foo?> <?=$bar?>
Si vous utilisez des modèles PHP, les problèmes de sécurité doivent être résolus par vous-même. Mais ce n'est pas un problème pour les équipes matures.
De plus, la nouvelle prise en charge des modèles de type chaîne semble plus vigoureuse, et le chemin qui s'éloigne des modèles s'éloigne également de plus en plus :
Extrait de code :
$smarty->display('string:Ceci est mon modèle, {$foo}!');
Liens connexes de smarty3
Smarty 3 Alpha avec SVN - Il est assez économique de choisir le service svn fourni par googlecode
groupe de diffusion des développeurs smarty 3