J'utilise actuellement le système de création de gabarits Smarty pour notre site de production, mais je suis curieux de savoir quel est le niveau de performance que j'utilise en utilisant ce moteur de gabarit. Y a-t-il des alternatives plus rapides Existe-t-il un moyen de coder pour ne pas avoir à utiliser un tel système de modèle? Je vous remercie!Alternatives à Smarty pour séparer la présentation du code en PHP?
Répondre
Vous n'avez pas besoin d'un moteur de modélisation externe pour séparer le code de la présentation, vous avez juste besoin de logique pour cela. PHP lui-même est parfaitement adapté en tant que moteur de template - ne mélangez pas le code PHP et HTML. Les moteurs de modèles sont simplement plus faciles à apprendre pour un concepteur de sites Web non programmeur.
La réponse évidente - il suffit d'utiliser PHP. Beaucoup affirment que c'est un langage de gabarit, bien que je préfère utiliser Smarty. Smarty force les développeurs PHP à séparer la logique métier, les appels à la base de données, etc. de la présentation. Cependant, un développeur PHP discipliné peut utiliser PHP comme langage de modèle et garder la présentation séparée.
Vous pouvez également utiliser les transformations XSL pour séparer la logique de la présentation. XSLT-Transformer reçoit l'arborescence XML et génère une sortie HTML, en utilisant des transformations XSLT pour produire une présentation.
Mais XSLT est assez difficile à étudier et exige des connaissances en XML et XPath. J'ai utilisé Smarty dans mes projets récents, mais mon projet actuel est construit sur des modèles XSLT, j'ai donc dû apprendre XSLT. Cela me semble plus compliqué, que Smarty et son ancêtre FastTemplate. Cependant, XSLT est une autre façon de séparer la logique de la présénation.
L'avantage de XML & XSLT est que ces technologies sont utilisées avec différentes langues, pas seulement avec PHP. En plus il y a un autre moteur de template - PHP template engine. C'est un moteur de template par défaut pour Drupal CMS. Je ne suis pas expert Drupal, donc je ne peux rien dire à ce sujet. Cependant, il utilise la syntaxe PHP, donc c'est assez simple à apprendre.
Vous pouvez lire à propos de XSLT here.
J'espère que ma réponse vous sera utile.
Vous pouvez essayer Psttt! moteur de template pour php
code source complet ici http://github.com/givanz/psttt