Bonjour,
Pour mon site j'ai crée une classe qui fait moteur de template et que je fais évoluer selon mes besoins.
Pour stocker les données que je dois insérer dans le template, j'ai décidé de tout regrouper dans une propriété de ma classe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 class TwigL { public $data; // toutes les données/variables a insérer dans le template ...
un exemple de template:
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <div id="legal"> <button class="lien_ml left" onclick="Show_ML('cgu_{{ user.langue_Suffixe() }}','{{ footer.cgu_titre }}'); return false;">{{ footer.cgu_caption }}</button> <span id="copyright">©{{ footer.annee }}</span>
Ce que je veux obtenir c'est ça:
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <div id="legal"> <button class="lien_ml left" onclick="Show_ML('cgu_{$twigl->data->user->langue_Suffixe()}','{$twig->data->footer->cgu_titre}'); return false;">{$twig->data->footer->cgu_caption}</button> <span id="copyright">©{$twig->data->footer->annee}</span>
Au niveau regex pas de soucis, le moteur de template fonctionne depuis un bon moment
Par contre au niveau POO je ne suis pas trop sur de ce que je fais.
L'idée c'est de stocker les données comme un array a multiple dimensions avec dedans des STRING ou des pointeurs vers les instanciations d'autres classes ($user).
Pour moi $data est une propriété qui contient des objets constitué que de propriétés.
Déjà là j'ai du mal a bien visualiser le truc et a le décrire et en écrivant ce message je me rends compte qui il y peut être un problème de structure.
ma classe $user devrait pouvoir être accessible comme ça:
le problème c'est que si je fais ça dans le constructeur de ma classe TwigL:
Code : Sélectionner tout - Visualiser dans une fenêtre à part $twigl->data->user->langue_Suffixe()
j'ai le message suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 class TwigL { public $data; public function __construct($user) { $this->data->user = $user; }
Est ce qu'il est possible de faire ce que je souhaite simplement et comment le faire proprement.Creating default object from empty value
Merci d'avance
Partager