Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Variable réservée {$smarty}

La variable PHP réservée {$smarty} peut être utilisée pour accéder à plusieurs variables d'environnements. En voici la liste complète.

Variables de requête

Les variables de requête comme $_GET, $_POST, $_COOKIE, $_SERVER, $_ENV et $_SESSION (voir $request_vars_order et $request_use_auto_globals) peuvent être utilisées comme dans l'exemple suivant :

Example 4.7. Afficher des variables de requête


{* Affiche la valeur de page dans l'url ($_GET) http://www.example.com/index.php?page=foo *}
{$smarty.get.page}

{* affiche la variable "page" récupérée depuis un formulaire ($_POST['page']) *}
{$smarty.post.page}

{* affiche la valeur du cookie "utilisateur" ($_COOKIE['username']) *}
{$smarty.cookies.utilisateur}

{* affiche la variable serveur "SERVER_NAME" ($_SERVER['SERVER_NAME']) *}
{$smarty.server.SERVER_NAME}

{* affiche la variable d'environnement "PATH" *}
{$smarty.env.PATH}

{* affiche la variable de session PHP "id" ($_SESSION['id']) *}
{$smarty.session.id}

{* affiche la variable "utilisateur" du regroupement de get/post/cookies/server/env *}
{$smarty.request.utilisateur}

   

Note

Pour des raisons historiques, {$SCRIPT_NAME} peut être accédé directement, cependant, {$smarty.server.SCRIPT_NAME} est la solution proposée pour accéder à cette valeur.


<a href="{$SCRIPT_NAME}?page=smarty">click me</a>
<a href="{$smarty.server.SCRIPT_NAME}?page=smarty">click me</a>

   

{$smarty.now}

Le timestamp courant peut être récupéré grâce à {$smarty.now}. La valeur correspond au nombre de secondes écoulées depuis Epoch (1 Janvier 1970) et peut être passé directement au modificateur de variable date date_format à des fins d'affichage. Notez que time() est appelé à chaque invocation, i.e. un script qui prend 3 secondes à s'exécuter avec $smarty.now au début et à la fin montrera les 3 secondes de différence.

Example 4.8. Utilisation de {$smarty.now}


{* utilise le modificateur de variable date_format pour afficher la date et heure *}
{$smarty.now|date_format:'%d-%m-%Y %H:%M:%S'}

   


{$smarty.const}

Vous pouvez directement accéder aux constantes PHP. Voir aussi les constantes smarty.


// la constante définie dans PHP
define('_MY_CONST_VAL','CHERRIES');

Affiche la constante dans un template comme :


{* la sortie de la constante PHP dans le template *}
{$smarty.const._MA_CONSTANTE_}

{$smarty.capture}

La sortie du template réalisée via {capture}..{/capture} peut être récupérée par l'intermédiaire de la variable {$smarty.capture}. Voir la section sur {capture} pour un exemple à ce sujet.

{$smarty.config}

La variable {$smarty.config} peut être utilisée pour désigner une variable d'un fichier de configuration. {$smarty.config.foo} est un synonyme de {#foo#}. Voir la section {config_load} pour un exemple à ce sujet.

{$smarty.section}, {$smarty.foreach}

La variable {section} peut être utilisée pour accéder aux propriétés des boucles {$smarty.section} et {$smarty.foreach}. Voir la documentation de {section} et {foreach}. Ils ont des valeurs vraiment utiles comme .first, .index, etc.

{$smarty.template}

Retourne le nom du template courant. Cet exemple montre le container.tpl ainsi que le banner.tpl inclu avec {$smarty.template}.


<b>Le conteneur principal est {$smarty.template}</b>
{include file='banner.tpl'}

  

Affichera :


<b>Le conteneur principal est container.tpl</b>
banner.tpl

  

{$smarty.version}

Retourne la version de Smarty ayant servie à compiler le template.


<div id="footer">Généré par Smarty {$smarty.version}</div>

  

{$smarty.ldelim}, {$smarty.rdelim}

Ces variables sont utilisées pour afficher le délémiteur gauche et le délimiteur droit. Lisez aussi la partie {ldelim},{rdelim}.

Voir aussi les variables et les variables de configuration.