diff --git a/docs/fr/appendixes/tips.xml b/docs/fr/appendixes/tips.xml
index a8d4bed6..53471a2c 100644
--- a/docs/fr/appendixes/tips.xml
+++ b/docs/fr/appendixes/tips.xml
@@ -1,6 +1,6 @@
-
+
Trucs et astuces
@@ -11,7 +11,8 @@
défaut pour une variable qui n'a pas été assignée, comme
pour afficher " " afin que les couleurs de fond
des tableaux fonctionnent. Beaucoup utiliseraient une
- instruction {if} pour gérer celà, mais il existe un moyen
+ instruction {if}
+ pour gérer celà, mais il existe un moyen
plus facile dans Smarty : l'utilisation du modificateur
de variable default.
@@ -34,8 +35,13 @@
]]>
+
+ Voir aussi
+ default et
+ la gestion des variables par défaut.
+
-
+
Gestion des variables par défaut
@@ -56,6 +62,11 @@
]]>
+
+ Voir aussi
+ default et
+ la gestion des variables non-assignées.
+ Passage du titre à un template d'en-tête
@@ -124,7 +135,7 @@ footer.tpl
A partir Smarty 1.4.0, vous pouvez passer les dates à Smarty
sous la forme de timestamps Unix ou MySQL, ou tout autre format de dates
- que comprend strtotime().
+ que comprend strtotime().
@@ -164,7 +175,8 @@ Jan 4, 2001
- En utilisant la fonction {html_select_date} dans un template, le programmeur
+ En utilisant la fonction {html_select_date}
+ dans un template, le programmeur
veut en général convertir le résultat d'un formulaire en un timestamp.
Voici une fonction qui devrait vous être utile.
@@ -271,7 +283,8 @@ function insert_header()
Traditionnellemnt, la programmation avec des templates dans les applications
se déroule de la façon suivante : d'abord vous récupérez vos variables
dans l'application PHP (peut-être avec des requêtes en base de données), puis
- vous instanciez votre objet Smarty, assignez les variables et affichez le
+ vous instanciez votre objet Smarty, assignez
+ les variables et affichez le
template. Disons par exemple que nous avons un téléscripteur dans
notre template. Nous récupérerions les données dans notre application,
puis les assignerions ensuite pour les afficher. Mais ne serait-ce pas
@@ -320,6 +333,12 @@ Stock Name: {$ticker.name} Stock Price: {$ticker.price}
]]>
+
+ Voir aussi
+ {include_php},
+ {include} et
+ {php}.
+ Dissimuler les adresses email
@@ -350,6 +369,10 @@ Send inquiries to
peu probable.
+
+ Voir aussi
+ escape.
+
-
+
Variables insérées dans des chaînes de caractères
@@ -16,7 +16,7 @@
Syntaxe d'insertion de variables dans des chaînes
+
+ Voir aussi
+ escape.
+
-
+
Variables
@@ -39,6 +39,11 @@ Plusieurs autres combinaisons sont autoris
]]>
+
+ Voir aussi
+ les variables réservées $smarty et
+ les variables de configuration.
+
-
+
config_load
@@ -128,7 +128,7 @@
Voir aussi
les fichiers de configuration et
- config_load.
+ les variables de configuration.
-
+
foreach,foreachelse
@@ -54,7 +54,8 @@
Les boucles foreach sont une alternative aux boucles
- section. Les boucles foreach
+ section.
+ Les boucles foreach
sont utilisées pour parcourir des tableaux associatifs simples.
La syntaxe des boucles foreach est bien plus simple
que celle des boucles section, mais en contrepartie,
@@ -73,47 +74,116 @@
foreach
-
-
+
+
{/foreach}
+]]>
+
+
+ L'exemple ci-dessus affichera :
+
+
+
+id: 1000
+id: 1001
+id: 1002
+]]>
+
-
+
foreach key
-
+
+assign("contacts", array(array("tel" => "1", "fax" => "2", "portable" => "3"),
- array("tel" => "555-4444", "fax" => "555-3333", "portable" => "760-1234")));
+$smarty->assign("contacts", array(array("tel" => "1", "fax" => "2", "portable" => "3"),
+ array("tel" => "555-4444", "fax" => "555-3333", "portable" => "760-1234")));
*}
{foreach name=outer item=contact from=$contacts}
{foreach key=key item=item from=$contact}
- {$key}: {$item}<br>
+ {$key}: {$item}
{/foreach}
{/foreach}
-
-SORTIE:
-
-tel: 1<br>
-fax: 2<br>
-portable: 3<br>
-tel: 555-4444<br>
-fax: 555-3333<br>
-portable: 760-1234<br>
+]]>
+
+
+ L'exemple ci-dessus affichera :
+
+
+
+fax: 2
+portable: 3
+tel: 555-4444
+fax: 555-3333
+portable: 760-1234
+]]>
+
+
+
+ Les boucles Foreach ont également leurs propres variables qui gèrent les propriétés
+ de foreach. Elles sont indiquées par : {$smarty.foreach.foreachname.varname}
+ où foreachname est le nom spécifié par l'attribut name
+ de foreach.
+
+
+
+ iteration
+
+ iteration est utilisé pour afficher l'itération de la boucle courante.
+
+
+ iteration commence toujours par 1 et est incrémenté
+ à chaque itération.
+
+
+
+
+ first
+
+ first est défini à true si l'itération courante de foreach est la première.
+
+
+
+
+ last
+
+ last est défini à true si l'itération courante de foreach est la dernière.
+
+
+
+
+ show
+
+ show est utilisé en tant que paramètre de foreach.
+ show est un booléen (true ou false).
+ S'il vaut false, foreach ne sera pas affiché. Si foreachelse est présent,
+ il sera affiché alternativement.
+
+
+
+
+ total
+
+ total est utilisé pour afficher le nombre d'itérations
+ bouclées par ce foreach. Il peut être utilisé dans ou après le foreach.
+
+
+ Voir aussi
+ {section} et
+ $smarty.foreach.
+
+
-
+
if,elseif,else
- l'instruction if dans Smarty dispose de la même flexibilité que l'instruction
+ L'instruction {if} dans Smarty dispose de la même flexibilité que l'instruction
PHP du même nom, avec quelques fonctionnalités supplémentaires pour le
- moteur de template. Tous les if doivent être
- utilisés de pair avec un /if.
- else et elseif sont également
- des balises autorisées. "eq", "ne","neq", "gt", "lt", "lte", "le",
- "gte" "ge","is even","is odd", "is not even","is not odd","not","mod",
- "div by","even by","odd by","==", "===", "!=",">", "<","<=",">=" sont tous des opérateurs conditionnels valides, et doivent obligatoirement être
- séparés des autres éléments par des espaces.
+ moteur de template. Tous les {if} doivent être
+ utilisés de pair avec un {/if}.
+ {else} et {elseif} sont également
+ des balises autorisées. Toutes les conditions PHP sont reconnues,
+ comme ||, or,
+ &&, and, etc.
- La liste suivante présente les opérateurs reconnus, qui doivent être entourés d'espaces.
- Remarquez que les éléments listés entre [crochets] sont optionnels. Les équivalents
- PHP sont indiqués lorsque applicables.
+ La liste suivante présente les opérateurs reconnus, qui doivent être entourés d'espaces.
+ Remarquez que les éléments listés entre [crochets] sont optionnels. Les équivalents
+ PHP sont indiqués lorsque applicables.
-
-
-
-
-
-
-
-
- Opérateur
- Syntaxe alternative
- Exemple de syntaxe
- Signification
- Equivalent PHP
-
-
-
-
- ==
- eq
- $a eq $b
- égalité
- ==
-
-
- !=
- ne, neq
- $a neq $b
- différence
- !=
-
-
- >
- gt
- $a gt $b
- supérieur à
- >
-
-
- <
- lt
- $a lt $b
- inférieur à
- <
-
-
- >=
- gte, ge
- $a ge $b
- supérieur ou égal à
- >=
-
-
- <=
- lte, le
- $a le $b
- inférieur ou égal à
- <=
-
-
- ====
-
- $a === 0
- égalité (type et valeur)
- ====
-
-
- !
- not
- not $a
- négation
- !
-
-
- %
- mod
- $a mod $b
- modulo
- %
-
-
- is [not] div by
-
- $a is not div by 4
- divisible par
- $a % $b == 0
-
-
- is [not] even
-
- $a is not even
- est [ou non] un nombre pair
- $a % 2 == 0
-
-
- is [not] even by
-
- $a is not even by $b
- paritée de groupe
- ($a / $b) % 2 == 0
-
-
- is [not] odd
-
- $a is not odd
- est [ou non] un nombre impair
- $a % 2 != 0
-
-
- is [not] odd by
-
- $a is not odd by $b
- est [ou non] un groupe impair
- ($a / $b) % 2 != 0
-
-
-
-
+
+
+
+
+
+
+
+
+ Opérateur
+ Syntaxe alternative
+ Exemple de syntaxe
+ Signification
+ Equivalent PHP
+
+
+
+
+ ==
+ eq
+ $a eq $b
+ égalité
+ ==
+
+
+ !=
+ ne, neq
+ $a neq $b
+ différence
+ !=
+
+
+ >
+ gt
+ $a gt $b
+ supérieur à
+ >
+
+
+ <
+ lt
+ $a lt $b
+ inférieur à
+ <
+
+
+ >=
+ gte, ge
+ $a ge $b
+ supérieur ou égal à
+ >=
+
+
+ <=
+ lte, le
+ $a le $b
+ inférieur ou égal à
+ <=
+
+
+ ===
+
+ $a === 0
+ égalité (type et valeur)
+ ===
+
+
+ !
+ not
+ not $a
+ négation
+ !
+
+
+ %
+ mod
+ $a mod $b
+ modulo
+ %
+
+
+ is [not] div by
+
+ $a is not div by 4
+ divisible par
+ $a % $b == 0
+
+
+ is [not] even
+
+ $a is not even
+ est [ou non] un nombre pair
+ $a % 2 == 0
+
+
+ is [not] even by
+
+ $a is not even by $b
+ paritée de groupe
+ ($a / $b) % 2 == 0
+
+
+ is [not] odd
+
+ $a is not odd
+ est [ou non] un nombre impair
+ $a % 2 != 0
+
+
+ is [not] odd by
+
+ $a is not odd by $b
+ est [ou non] un groupe impair
+ ($a / $b) % 2 != 0
+
+
+
+
Instruction if
-
-{if $name eq "Fred"}
- Bienvenue, Monsieur.
-{elseif $name eq "Wilma"}
- Bienvenue m'dame.
-{else}
- Bienvenue, qui que vous soyez.
-{/if}
+
+ 1000 ) and $volume >= #minVolAmt#}
+ ...
+ {/if}
-{* vous pouvez également faire appel aux fonctions PHP *}
-{if count($var) gt 0}
- ...
-{/if}
+ {* vous pouvez également faire appel aux fonctions PHP *}
+ {if count($var) gt 0}
+ ...
+ {/if}
-{* teste si les valeurs sont paires(even) ou impaires(odd) *}
-{if $var is even}
- ...
-{/if}
-{if $var is odd}
- ...
-{/if}
-{if $var is not odd}
- ...
-{/if}
+ {* teste si les valeurs sont paires(even) ou impaires(odd) *}
+ {if $var is even}
+ ...
+ {/if}
+ {if $var is odd}
+ ...
+ {/if}
+ {if $var is not odd}
+ ...
+ {/if}
-{* teste si la variable est divisble par 4 *}
-{if $var is div by 4}
- ...
-{/if}
+ {* teste si la variable est divisible par 4 *}
+ {if $var is div by 4}
+ ...
+ {/if}
-{* teste si la variable est paire, par groupe de deux i.e.,
-0=paire, 1=paire, 2=impaire, 3=impaire, 4=paire, 5=paire, etc. *}
-{if $var is even by 2}
- ...
-{/if}
+ {* teste si la variable est paire, par groupe de deux i.e.,
+ 0=paire, 1=paire, 2=impaire, 3=impaire, 4=paire, 5=paire, etc. *}
+ {if $var is even by 2}
+ ...
+ {/if}
-{* 0=paire, 1=paire, 2=paire, 3=impaire, 4=impaire, 5=impaire, etc. *}
-{if $var is even by 3}
- ...
-{/if}
+ {* 0=paire, 1=paire, 2=paire, 3=impaire, 4=impaire, 5=impaire, etc. *}
+ {if $var is even by 3}
+ ...
+ {/if}
+]]>
+
-
+
include_php
@@ -15,7 +15,7 @@
Nom attributTypeRequis
- Defaut
+ DéfautDescription
@@ -33,7 +33,7 @@
NontrueInclure plusieurs fois ou non le fichier PHP si
- plusieurs demandes d'inclusions sont faites.
+ plusieurs demandes d'inclusions sont faîtes.
assign
@@ -41,27 +41,27 @@
Nonn/ale nom de la variable PHP dans laquelle la sortie
- sera assignée plutôt que directement affichée.
+ sera assignée plutôt que directement affichée.
- Technical Note
-
- include_php est presque obsolète dans Smarty. Vous pouvez obtenir des résultats
- équivalents en utilisant les fonctions utilisateur.
- La seule raison qui peut vous pousser à utiliser include_php est que
- vous avez besoin de mettre une de vos fonction en quarantaine vis à vis du
- répertoire des plugins ou de votre application. Reportez vous à
- l'exemple des templates composants
- pour plus de détails.
-
+ Technical Note
+
+ include_php est presque obsolète dans Smarty. Vous pouvez obtenir des résultats
+ équivalents en utilisant les fonctions utilisateur.
+ La seule raison qui peut vous pousser à utiliser include_php est que
+ vous avez besoin de mettre une de vos fonction en quarantaine vis à vis du
+ répertoire des plugins ou de votre application. Reportez vous à
+ l'exemple des templates composants
+ pour plus de détails.
+
- les balises include_php sont utilisées pour inclure directement
+ Les balises include_php sont utilisées pour inclure directement
un script PHP dans vos templates. Si "security" est activé, alors le script
à exécuter doit être placé dans le chemin $trusted_dir. La balise
include_php attends l'attribut "file", qui contient le chemin du
@@ -96,34 +96,39 @@
L'objet Smarty est disponible en tant que $this dans le script PHP inclus.
- fonction include_php
-
-load_nav.php
--------------
+ Fonction include_php
+
+query("select * from site_nav_sections order by name",SQL_ALL);
- $this->assign('sections',$sql->record);
+ // charge des variables depuis une base de données mysql et les assigne au template.
+ require_once("MySQL.class.php");
+ $sql = new MySQL;
+ $sql->query("select * from site_nav_sections order by name",SQL_ALL);
+ $this->assign('sections',$sql->record);
-?>
+ ?>
+ ]]>
+
+
+ Où index.tpl est :
+
+
+
+ {foreach item="curr_section" from=$sections}
+ {$curr_section.name}
+ {/foreach}
+]]>
+
-
-
-
- insert
-
-
-
-
-
-
-
-
-
- Nom attribut
- Type
- Requis
- Defaut
- Description
-
-
-
-
- name
- chaîne de caractères
- Oui
- n/a
- le nom de la fonction insert (insert_name)
-
-
- assign
- chaîne de caractère
- Non
- n/a
- Le nom de la variable qui recevra la sortie
-
-
- script
- chaîne de caractères
- Non
- n/a
- Le nom du script PHP inclus avant que la fonction
+
+
+
+ insert
+
+
+
+
+
+
+
+
+
+ Nom attribut
+ Type
+ Requis
+ Defaut
+ Description
+
+
+
+
+ name
+ chaîne de caractères
+ Oui
+ n/a
+ le nom de la fonction insert (insert_name)
+
+
+ assign
+ chaîne de caractère
+ Non
+ n/a
+ Le nom de la variable qui recevra la sortie
+
+
+ script
+ chaîne de caractères
+ Non
+ n/a
+ Le nom du script PHP inclus avant que la fonction
insert ne soit appelée.
-
-
- [var ...]
- [var type]
- Non
- n/a
- Variable à passer à la fonction insert
-
-
-
-
+
+
+ [var ...]
+ [var type]
+ Non
+ n/a
+ Variable à passer à la fonction insert
+
+
+
+
+
+ Les balises insert fonctionnent à peu près comme les balises include,
+ à l'exception que leur sortie n'est pas placée en cache lorsque
+ le cache [caching] est activé.
+ Les balises insert seront exécutées à chaque appel du template.
+
+
+ Supposons que vous avez un template avec un emplacement
+ pour un bandeau publicitaire en haut de page.
+ Ce bandeau publicitaire peut contenir toutes sortes de contenus
+ HTML, images, flash, etc. Nous ne pouvons pas placer du contenu
+ statique à cet endroit. Nous ne voulons pas non plus que ce
+ contenu fasse partie du cache. Arrive alors la balise insert.
+ Le template connais #emplacement_bandeau# et #id_site# (récupérés
+ depuis un fichier de configuration), et à besoin d'un appel de
+ fonction pour récupérer le contenu du bandeau.
+
+
+ function insert
+
+ {* exemple de récupération d'un bandeau publicitaire *}
+ {insert name="getBanner" lid=#emplacement_bandeau# sid=#id_site#}
+
+
+ Dans cet exemple, nous utilisons le nom getBanner et lui passons les
+ paramètres #emplacement_bandeau# et #id_site#. Smarty va rechercher une
+ fonction appelée insert_getBanner () dans votre application PHP, et lui
+ passer les valeurs #banner_location_id# et #site_id# comme premier
+ paramètre, dans un tableau associatif. Tous les noms des fonctions insert
+ de votre application doivent être prefixées de "insert_" pour remédier
+ à d'éventuels conflits de nommage. Votre fonction insert_getBanner ()
+ est supposée traiter les valeurs passées et retourner
+ un résultat. Ces résultats sont affichés dans le template en lieu et
+ place de la balise. Dans cet exemple, Smarty appellera cette fonction
+ insert_getBanner(array("lid" => "12345","sid" => "67890")); et affichera
+ le résultat retourné à la place de la balise insert.
+
- Les balises insert fonctionnent à peu près comme les balises include,
- à l'exception que leur sortie n'est pas placée en cache lorsque
- le cache [caching] est activé.
- Les balises insert seront exécutées à chaque appel du template.
-
+ Si vous donnez une valeur à l'attribut "assign", la sortie de la balise
+ insert sera assigné à une variable de template de ce nom au lieu d'être
+ affichée directement. NOTE: assigner la sortie à une variable n'est pas
+ très utile lorsque le cache est activé.
+
+
+ Si vous donnez une valeur à l'attribut "script", ce script PHP sera
+ inclus (une seule fois) avant l'exécution de la fonction insert.
+ Le cas peut survenir lorsque la fonction insert n'existe pas encore,
+ et que le script PHP chargé de sa définission doit être inclus. Le
+ chemin doit être absolu ou relatif à $trusted_dir.
+ Lorsque "security" est actif, le script doit être situé
+ dans $trusted_dir.
+
+
+ L'objet Smarty est passé comme second argument. De cette façon, vous
+ pouvez utiliser ou modifier des informations sur l'objet Smarty,
+ directement depuis votre fonction d'insertion.
+
+
+ Note technique
- Supposons que vous avez un template avec un emplacement
- pour un bandeau publicitaire en haut de page.
- Ce bandeau publicitaire peut contenir toutes sortes de contenus
- HTML, images, flash, etc. Nous ne pouvons pas placer du contenu
- statique à cet endroit. Nous ne voulons pas non plus que ce
- contenu fasse partie du cache. Arrive alors la balise insert.
- Le template connais #emplacement_bandeau# et #id_site# (récupérés
- depuis un fichier de configuration), et à besoin d'un appel de
- fonction pour récupérer le contenu du bandeau.
+ Il est possible d'avoir des portions de template qui ne soient pas
+ gérables par le cache. Même si vous avez activé l'option
+ caching, les balises insert
+ ne feront pas partie du cache. Elles retourneront un contenu dynamique
+ à chaque invocation de la page. Cette méthode est très pratique pour
+ des éléments tels que les bandeaux publicitaires, les enquêtes,
+ la météo, les résultats de recherche, retours utilisateurs, etc.
-
- function insert
-
-{* exemple de récupération d'un bandeau publicitaire *}
-{insert name="getBanner" lid=#emplacement_bandeau# sid=#id_site#}
-
-
- Dans cet exemple, nous utilisons le nom getBanner et lui passons les
- paramètres #emplacement_bandeau# et #id_site#. Smarty va rechercher une
- fonction appelée insert_getBanner () dans votre application PHP, et lui
- passer les valeurs #banner_location_id# et #site_id# comme premier
- paramètre, dans un tableau associatif. Tous les noms des fonctions insert
- de votre application doivent être prefixées de "insert_" pour remédier
- à d'éventuels conflits de nommage. Votre fonction insert_getBanner ()
- est supposée traiter les valeurs passées et retourner
- un résultat. Ces résultats sont affichés dans le template en lieu et
- place de la balise. Dans cet exemple, Smarty appellera cette fonction
- insert_getBanner(array("lid" => "12345","sid" => "67890")); et affichera
- le résultat retourné à la place de la balise insert.
-
-
- Si vous donnez une valeur à l'attribut "assign", la sortie de la balise
- insert sera assigné à une variable de template de ce nom au lieu d'être
- affichée directement. NOTE: assigner la sortie à une variable n'est pas
- très utile lorsque le cache est activé.
-
-
- Si vous donnez une valeur à l'attribut "script", ce script PHP sera
- inclus (une seule fois) avant l'exécution de la fonction insert.
- Le cas peut survenir lorsque la fonction insert n'existe pas encore,
- et que le script PHP chargé de sa définission doit être inclus. Le
- chemin doit être absolu ou relatif à $trusted_dir.
- Lorsque "security" est actif, le script doit être situé
- dans $trusted_dir.
-
-
- L'objet Smarty est passé comme second argument. De cette façon, vous
- pouvez utiliser ou modifier des informations sur l'objet Smarty,
- directement depuis votre fonction d'insertion.
-
-
- Note technique
-
- Il est possible d'avoir des portions de template qui ne soient pas
- gérables par le cache. Même si vous avez activé l'option
- caching, les balises insert
- ne feront pas partie du cache. Elles retourneront un contenu dynamique
- à chaque invocation de la page. Cette méthode est très pratique pour
- des éléments tels que les bandeaux publicitaires, les enquêtes,
- la météo, les résultats de recherche, retours utilisateurs, etc.
-
-
-
-
+
+
+
diff --git a/docs/fr/designers/language-builtin-functions/language-function-literal.xml b/docs/fr/designers/language-builtin-functions/language-function-literal.xml
index 5a8d84ed..a23e3169 100644
--- a/docs/fr/designers/language-builtin-functions/language-function-literal.xml
+++ b/docs/fr/designers/language-builtin-functions/language-function-literal.xml
@@ -1,6 +1,6 @@
-
+
literal
@@ -15,33 +15,33 @@
les délimiteurs individuels.
- balises literal
+ Balises literal
-
+
{/literal}
]]>
-
- Voir aussi la
- désactivation de l'analyse de Smarty.
-
+
+ Voir aussi la
+ désactivation de l'analyse de Smarty.
+
-
+
php
@@ -12,12 +12,15 @@
balises php
-
-{php}
- // inclusion directe d'un script PHP
- // depuis le template.
- include("/path/to/display_weather.php");
-{/php}
+
+
+
-
+
strip
@@ -22,15 +22,15 @@
{strip}{/strip} n'affecte en aucun cas le contenu des variables de
template. Voir le modificateur
- strip pour un rendu identique pour les variables.
+ strip pour un rendu identique pour les variables.
- balises strip
-
+ Balises strip
+
+