6. Annexe▲
6.1. 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() {
}
}
?>
6.2. 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.
6.3. Structure du tableau $InfoTpl▲
Le tableau $infoTpl sera de cette forme : Note : le texte entre acolades 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
)
)
)