1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
<?php
class TemplateEngine
{
private $template; // Fichier template à utiliser, contenant les variables à substituer.
private $variables; // Tebleau associatif qui contiendra les variables et les valeurs à leur substituer.
public function __construct($template)
{
$this->template = addslashes($template);
// $this->variables = array();
}
// Ajouter une nouvelle variable à substituer.
public function addVariable($variable, $content)
{
$this->variables[$variable] = $content;
}
// Affiche la page
public function outputModifiedPage()
{
if (file_exists($this->template))
{
// Récupération du contenu du template.
$modifiedPage = file_get_contents($this->template);
// Parcours du template et substitution des variables.
foreach ($this->variables as $variable)
{
$modifiedPage = preg_repalce('#${'.$variable.'}#', $this->variables[$variable], $modifiedPage);
}
echo $modifiedPage;
}
else throw new Exception('Le fichier '.$template.' n\'existe pas');
}
}
?> |
Partager