
Home
» Talus' Works » Talus' TPL » Documentation » Les Variables » Lecture du Sujet » Page 1 | Forum Fermé - Sujet Fermé |
|
|
|
|
Bonjour à tous, Je vais exposer ici le principe des variables, comment on les utilise dans Talus' TPL. Je vais tout d'abord aborder (huhu) le coté pour le code PHP, puis le coté pour le Template, et vous présenter ainsi toutes les variables qu'il y a dans ce moteur. Commençons ! Coté PHPLes variables "Simples"Vous avez plusieurs façons pour déclarer des variables TPL. Une, pour juste donner une valeur à une variable TPL, se fait via la méthode Talus_TPL::set(). Elle peut prendre deux parametres en arguments : le nom de la variable, et sa valeur. Ca peut également être un array, sans valeur pour le deuxième argument.
Code PHP
<?php
Ainsi, vous avez déclaré une variable "MA_VAR", et "AUTRE_VAR". Pour ne pas vous perdre, j'ai obligé dans le code que les noms des variables dans les templates soient en majusucles, et aussi suivent quelques standards de PHP (même convention de nommage, à ceci près qu'elles soient toujours en majuscules). Ca permet de les différencier dans les templates, avec les blocs (que nous verrons plus tard). Vous pouvez également donner des array en paramètre "valeur" (ou alors dans la valeur dans l'array), pour avoir accès à des array dans les templates. Vous pouvez aussi définir une variable par référence (comme PHP ; je vous invite à consulter le chapitre sur les références dans la doc PHP pour plus d'informations). C'est donc la deuxième façon d'instancier une variable.
Code PHP
<?php
La variable TPL "MA_REF" est donc liée par référence à la variable php $var. Les variables "bloc"Ces variables vous permettent l'utilisation de variables appartenant à un bloc. Nous verrons leur instanciation au niveau PHP lors des boucles, car c'est la même manoeuvre. C'est tout pour le moment... Au niveau du coté PHP ;) Du coté TPLLes Variables "Simples"Pour afficher la valeur de la variable (et non pas avoir la variable en elle-même, comme dans les conditions par exemple. On le verra juste après ;)), vous devez juste mettre ce bout de code (en reprenant l'exemple de tout à l'heure, la variable MA_VAR) :
Code TPL
{MA_VAR}
Pour obtenir la variable (sans qu'elle affiche quoique ce soit, mais juste pour avoir sa valeur en quelque sortes, c'est à dire l'équivalent d'un $ma_var en PHP), vous devez la préfixer avec un $, comme cela :
Code TPL
.
{$MA_VAR}
Pour avoir la valeur d'un élément dans un array, que ce soit pour afficher ou obtenir la valeur de la variable, vous devez juste rajouter les [] que vous voulez (comme en PHP) avant le } fermant le nom de la variable. Exemples :
Code TPL
{$MON_ARRAY[1]['truc'][{$CHOSE}]}
{MON_ARRAY[1]['truc'][{$CHOSE}]}
Les Variables "Foreach"Lorsque vous utilisez un foreach sur un array (on verra plus tard la structure des foreach), pour acceder ou bien à la clé ou bien à la valeur correspondante, vous devez faire :
Code TPL
<foreach ary="{$MON_ARRAY}">
{KEY,MON_ARRAY}
{VALUE,MON_ARRAY}
/*
* L'utilisation d'array pour la valeur explorée par le foreach est également
* possible... Mais que pour la valeur (VALUE) !
*/
{VALUE,MON_ARRAY['truc']['bidule'][{$CHOUETTE}]}
</foreach>
P.S > Surpris par les /**/ ? Comme en PHP, vous pouvez commenter des morceau de TPLs, commentaires qui seront ignorés par la compilation ! Pour accéder à la variable en elle même, un $ s'impose... avant le nom de la variable (soit après le KEY ou le VALUE). Exemple :
Code TPL
<foreach ary="{$MON_ARRAY}">
{KEY,$MON_ARRAY}
{VALUE,$MON_ARRAY}
</foreach>
Ou le même topo sur les array s'applique également dans ce cas là. Les Variables "Constantes"Vous avez déclaré une constante quelque part (via la fonction define() de PHP) dans votre code, vous pouvez également acceder ou bien à sa valeur ou elle même ! Pour cela, une syntaxe appropriée est à utiliser :
Code TPL
{__MA_CONSTANTE__}
Ou MA_CONSTANTE est la constante à utiliser. Vous devez donc préfixer et "suffixer" le nom de la variable par deux underscores (touche 8 pour un clavier azerty francophone). Bien entendu, pas d'array là dedans. Depuis la version 1.7.0, on ne peut plus renvoyer de constante via {__$MA_CONSTANTE__} : elle ne sert à rien dans le cadre d'utilisation visé. La déclaration de Variables, en plein TPL !Un code vaut mille discours :
Code TPL
/* Après cette instruction, il est possible d'appeler {MA_VAR} depuis le TPL ! */
<set var="MA_VAR">Ma Valeur</set>
<set var="MA_VAR['avec']['un']['array']">Ma Valeur</set>
Je tiens aussi à préciser que comme vous ne pouvez PAS déclarer autre chose que des chaines de caractères... Ce sera tout pour le moment ;) Sommaire : Aborder la Doc' Dernière édition le 23/04/2010, à 11:16, par Talus Dev' de Talus' Works |
|
|
|
|
(Mise à jour pour Talus' TPL 1.7.0) Dev' de Talus' Works |
| Forum Fermé - Sujet Fermé |