VI. Annexe▲
VI-A. Structure de la classe (code PHP)▲
template.php
Sélectionnez
<?php
class Template {
private $page; // Code source HTML de la page - fichier.tpl
private $infoTpl = array(); // Tableau des constantes => données
/**
* Vérifie l'existence du fichier
*/
function __construct($file) {
}
/**
* Enregistre les constantes dans $infoTpl
* infoTpl[.][][constant] = data;
*/
function simpleVar($varArray = array()) {
}
/**
* Enregistre les constantes dans $infoTpl
* infoTpl[type][lastID][constant] = data;
*
* - type = nom du bloc contenant la boucle
* - lastID = ID du tableau où se trouve le script
*/
function loopVar($type, $varArray = array()) {
}
/**
* Remplace les constantes par leurs données
*/
function constantReplace() {
}
/**
* Retourne le code HTML parser
*/
function parse() {
}
}
?>VI-B. Structure avancée de la classe▲
Explication du schéma :
- __construct() se lance automatiquement à l'instanciation de la classe ;
- Teste si le fichier passé en argument existe et est ouvert en lecture ;
- Mise du code source HTML du fichier template dans $page ;
- Récupération des constantes/données de test.php ;
- Traitement avec simpleVar() ou loopVar() selon les besoins ;
- Mise des constantes/données traitées dans $infoTpl ;
- Parse le code avec parse() ;
- parse() fait appel à constantReplace() ;
- constantReplace() remplace les constantes par leurs données.
VI-C. Structure du tableau $InfoTpl▲
Le tableau $infoTpl sera de cette forme : Note : le texte entre accolades représente le nom des variables que j'utilise dans mon code :
$infoTpl
Sélectionnez
{$infoTpl}
Array
(
{$type}
[.] => Array
(
{$info[$i]}
[0] => Array
(
{$constant => $data}
[WELCOME_MSG] => Bonjour !!
)
[1] => Array
(
[GOODBYE] => Aurevoir !!
)
)
[country] => Array
(
[0] => Array
(
[ID] => BE
[COUNTRY] => Belgique
)
[1] => Array
(
[ID] => FR
[COUNTRY] => France
)
[2] => Array
(
[ID] => ITA
[COUNTRY] => Italie
)
)
)

