Créer un moteur de template
Simple
-
ChrisCompote Messages postés 75 Statut Membre -
ChrisCompote Messages postés 75 Statut Membre -
Bonjour,
Voila j'aimerais créer un moteur de template (pour m'amuser et surtout pratiquer la POO) . Pour ça je cherche quelque information. Par exemple comment stoker les variables crée par l'utilisateur. Il feras $tpl->assign('NomDeMaVariable',$ContenuDeLaVariable); .
Les possibilités du template seront les suivantes.
Création de variable($tpl->assign('NomDeMaVariable',$ContenuDeLaVariableà;
Création de tableau ($tpl->assign_array('NomDuTableau',array()); )
Faire des conditions dans le code html, faire des boucles et crée des fonctions.
Voila si vous pouvez m'aider un peu en m'aiguillant, j'ai déjà vue quelque article mais rien de très passionnant .
Voila j'aimerais créer un moteur de template (pour m'amuser et surtout pratiquer la POO) . Pour ça je cherche quelque information. Par exemple comment stoker les variables crée par l'utilisateur. Il feras $tpl->assign('NomDeMaVariable',$ContenuDeLaVariable); .
Les possibilités du template seront les suivantes.
Création de variable($tpl->assign('NomDeMaVariable',$ContenuDeLaVariableà;
Création de tableau ($tpl->assign_array('NomDuTableau',array()); )
Faire des conditions dans le code html, faire des boucles et crée des fonctions.
Voila si vous pouvez m'aider un peu en m'aiguillant, j'ai déjà vue quelque article mais rien de très passionnant .
A voir également:
- Créer un moteur de template
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer un lien pour partager des photos - Guide
- Créer un compte gmail - Guide
- Creer un fichier .bat - Guide
1 réponse
Bonsoir,
Dans ta classe tu pourrais avoir quelque chose comme ca
ou
Tu crée tes mots clés qui seront ensuite transcrits en PHP
[SI var == 9]
<p>
[SINON]
<div>
[FINSI]
que tu pourras remplacer en faisant
preg_replace("/\[SI ([a-z][a-z0-9_-]+) ([=<>!]+) ([^\]]+)\]/", "if($\1 \2 \3){" , "$html");
$html = str_replace("[SINON]","else",$html);
$html = str_replace("[FINSI]","}",$html);
eval($html);
Voilà des idées
Dans ta classe tu pourrais avoir quelque chose comme ca
public $vars
class Template
{
public function __consctruct()
{
$this->vars = new stdClass();
}
public function assign($var_name, $var_content)
{
$this->vars->$var_name = $var_content;
}
ou
public $vars
class Template
{
public function __consctruct()
{
$this->vars = array();
}
public function assign($var_name, $var_content)
{
$vars = $this->vars;
$vars[$var_name] = $var_content;
$this->vars = $vars;
}
Tu crée tes mots clés qui seront ensuite transcrits en PHP
[SI var == 9]
<p>
[SINON]
<div>
[FINSI]
que tu pourras remplacer en faisant
preg_replace("/\[SI ([a-z][a-z0-9_-]+) ([=<>!]+) ([^\]]+)\]/", "if($\1 \2 \3){" , "$html");
$html = str_replace("[SINON]","else",$html);
$html = str_replace("[FINSI]","}",$html);
eval($html);
Voilà des idées