FAQ bibliothèques et extensions PHP
FAQ bibliothèques et extensions PHPConsultez toutes les FAQ
Nombre d'auteurs : 7, nombre de questions : 71, dernière mise à jour : 16 juin 2021
- Qu'est-ce qu'un template ?
- Quel est le principe de fonctionnement d'un template ?
- Quels sont les principaux systèmes de template ?
- Qu'est-ce que la phplib ?
- 4.1. ModeliXe (8)
- 4.2. phpBB2 (8)
- 4.3. Smarty (18)
- 4.4. TinyButStrong (7)
- 4.5. VTemplate (7)
Un template est un outil qui permet de séparer la programmation PHP d'un site et sa présentation.
Un site PHP qui ne se sert pas d'un moteur de templates va presque inévitablement mélanger le travail de traitement (préparation des données, modifications dans la base de données, interprétation d'une saisie utilisateur, etc..) et la préparation de la page HTML qui sera envoyée au navigateur.
Pour la réalisation d'un tout petit site qui ne sera jamais modifié, l'utilisation d'un template est discutable, mais dans tous les autres cas de figure, le template fera gagner du temps, améliorera la qualité de présentation du site et facilitera le travail des développeurs.
Le but est de séparer le travail fait avec PHP de la mise en forme du résultat fourni par ce dernier.
Généralement, ces deux tâches sont séparées dans des fichiers distincts. Ce qui permet de mieux marquer la frontière entre ces deux travaux et de changer facilement le modèle à utiliser (souvent appelé skin). Ainsi il sera possible de dire au fichier de traitement d'utiliser un modèle ou un autre simplement en spécifiant où se trouve le fichier correspondant.
Le fichier source PHP Il ressemble à tout autre fichier PHP, si ce n'est qu'il ne contient pas de code HTML. Seul le travail de programmation y est effectué. Lorsqu'une donnée est prête pour l'affichage, on la donne au moteur de template en expliquant de quelle donnée il s'agit, c'est ensuite lui qui se chargera de le transmettre au fichier de présentation HTML.
Le fichier de présentation Généralement un banal fichier HTML accompagné d'une feuille de style. Cependant, on ajoutera aux endroits où du contenu dynamique devra apparaître des marqueurs qui indiquent les points d'insertion du contenu.
Pas d'exemple ? Aucun exemple n'est présenté car chaque système de template utilise une syntaxe qui lui est propre. Un exemple de code ne serait donc pas représentatif de l'utilisation des templates « en général ». Certains templates utilisent des balises HTML, d'autres des balises XML et certains utilisent des marqueurs spéciaux écrits dans une remarque HTML < !-- et -->.
Lien : Création d'un moteur de templates en PHP, par Christophe SionPHP et les templates
Lien : Création d'un système de templates en PHP 5, par Adrien Pellegrini
Lien : Comparatif : Découverte des principaux moteurs de template en PHP, par Guillaume Rossolini
PHP Base Library est l'une des premières bibliothèques permettant d'utiliser un système de gabarits.
L'idée de la phplib est d'utiliser des fichiers de gabarit (l'extension classique est ".ihtml") qui contiennent le code HTML utilisé. Ces gabarits sont de véritables patrons, ils définissent uniquement une structure ou des éléments de structure. C'est un moule qui ne comporte aucun élément de logique.
L'utilisation de la phplib n'est plus recommandée car son développement a été arrêté. D'autres projets ont cependant repris la phplib, par exemple phpBB.
Lien : Qu'est-ce qu'un template ?
Lien : Quel est le principe de fonctionnement d'un template ?
Lien : Quels sont les principaux systèmes de template ?
Lien : Comparatif : Découverte des principaux moteurs de template en PHP, par Guillaume Rossolini