mirror of
https://github.com/smarty-php/smarty.git
synced 2025-08-06 11:24:27 +02:00
sync with EN
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.10 Maintainer: didou Status: ready -->
|
||||
<!-- EN-Revision: 1.11 Maintainer: didou Status: ready -->
|
||||
|
||||
<chapter id="tips">
|
||||
<title>Trucs et astuces</title>
|
||||
@@ -111,7 +111,7 @@
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
<filename>header.tpl</filename> - Notez que "BC News" est affich<63> si la variable
|
||||
<filename>header.tpl</filename> - Notez que "Smarty News" est affich<63> si la variable
|
||||
$title n'est pas d<>finie, en utilisant le modificateur de variable par
|
||||
<link linkend="language.modifier.default">d<EFBFBD>faut</link>.
|
||||
</para>
|
||||
@@ -119,7 +119,7 @@
|
||||
<![CDATA[
|
||||
<html>
|
||||
<head>
|
||||
<title>{$title|default:'BC News'}</title>
|
||||
<title>{$title|default:'Smarty News'}</title>
|
||||
</head>
|
||||
<body>
|
||||
]]>
|
||||
@@ -359,7 +359,7 @@ function smarty_function_load_ticker($params, &$smarty)
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{load_ticker symbol="YHOO" assign="ticker"}
|
||||
{load_ticker symbol='SMARTY' assign="ticker"}
|
||||
|
||||
Stock Name: {$ticker.name} Stock Price: {$ticker.price}
|
||||
]]>
|
||||
@@ -387,10 +387,9 @@ Stock Name: {$ticker.name} Stock Price: {$ticker.price}
|
||||
<title>Exemple de dissimulation d'une adresse email</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* in index.tpl *}
|
||||
|
||||
Send inquiries to
|
||||
{mailto address=$EmailAddress encode="javascript" subject="Hello"}
|
||||
{* dans le template *}
|
||||
<div id="contact">Envoyer une demande <20>
|
||||
{mailto address=$EmailAddress encode='javascript' subject='Bonjour'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.9 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.11 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.syntax.comments">
|
||||
<title>Commentaires</title>
|
||||
@@ -10,15 +10,18 @@
|
||||
de cette fa<66>on : <emphasis>{* voici un commentaire *}</emphasis>
|
||||
Les commentaires Smarty ne sont PAS affich<63>s dans la sortie finale du
|
||||
template, diff<66>remment des <!-- commentaires HTML -->
|
||||
et sont utilis<69>s pour des notes internes, dans le template, pour aider
|
||||
les d<>veloppeurs <20> en comprendre le fonctionnement.
|
||||
et sont utilis<69>s pour des notes internes, dans le template que personne ne verra ;)
|
||||
</para>
|
||||
<example>
|
||||
<title>Commentaires</title>
|
||||
<title>Commentaires dans un template</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<body>
|
||||
{* Je suis un commentaire Smarty, je n'existe pas dans la sortie compil<69>e *}
|
||||
<html>
|
||||
<head>
|
||||
<title>{$title}</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
{* un autre commentaire Smarty sur une seule ligne *}
|
||||
<!-- Un commentaire Html qui sera envoy<6F> au navigateur -->
|
||||
@@ -35,7 +38,7 @@ Un bloc de commentaires multilignes contenant les cr
|
||||
@ css: the style output
|
||||
**********************************************************}
|
||||
|
||||
{* Inclusion du fichier d'en t<>te *}
|
||||
{* Inclusion du fichier d'en-t<>te contenant le logo principal *}
|
||||
{include file='header.tpl'}
|
||||
|
||||
{* Note aux d<>veloppeurs : $includeFile est assign<67> au script foo.php *}
|
||||
@@ -48,10 +51,13 @@ Un bloc de commentaires multilignes contenant les cr
|
||||
{html_options options=$vals selected=$selected_id}
|
||||
</select>
|
||||
*}
|
||||
{* Balise cvs pour un template *}
|
||||
{* $Id: Exp $ *}
|
||||
|
||||
{* Balise cvs pour un template, ci-dessous, le 36 DOIT <20>TRE une devise am<61>ricaine sinon,
|
||||
il sera converti en cvs.. *}
|
||||
{* $Id: Exp $ *}
|
||||
{* $Id: *}
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
@@ -1,11 +1,12 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.7 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.9 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.syntax.functions">
|
||||
<title>Fonctions</title>
|
||||
<para>
|
||||
Les balises Smarty affichent une <link linkend="language.variables">variable</link>
|
||||
ou invoquent une fonction. Les fonctions sont appel<65>es
|
||||
ou invoquent une fonction. Elles sont appel<65>es
|
||||
lorsqu'elles sont entour<75>es, ainsi que leurs
|
||||
<link linkend="language.syntax.attributes">param<EFBFBD>tres</link>, des d<>limiteurs Smarty.
|
||||
Par exemple : {nomfonction attr1='val' attr2='val'}.
|
||||
@@ -16,15 +17,15 @@
|
||||
<![CDATA[
|
||||
{config_load file='colors.conf'}
|
||||
{include file='header.tpl'}
|
||||
{insert file='banner_ads.tpl'}
|
||||
{insert file='banner_ads.tpl' title='Smarty est cool !'}
|
||||
|
||||
{if $highlight_name}
|
||||
{if $logged_in}
|
||||
Bonjour, <font color="{#fontColor#}">{$name}!</font>
|
||||
{else}
|
||||
Bonjour, {$name}!
|
||||
{/if}
|
||||
|
||||
{include file='footer.tpl'}
|
||||
{include file='footer.tpl' ad=$random_id}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
@@ -39,7 +40,7 @@
|
||||
comme <link linkend="language.function.if">{if}</link>,
|
||||
<link linkend="language.function.section">{section}</link> et
|
||||
<link linkend="language.function.strip">{strip}</link>.
|
||||
Elles ne devraient pas <20>tre modifi<EFBFBD>es.
|
||||
Il n'y a aucune raison <20> ce qu'elles soient modifi<66>es ou chang<EFBFBD>es.
|
||||
</para>
|
||||
<para>
|
||||
Les fonctions utilisateurs sont des fonctions <emphasis role="bold">additionnelles</emphasis>,
|
||||
@@ -50,6 +51,11 @@
|
||||
<link linkend="language.function.popup">{popup}</link>
|
||||
sont deux exemples de fonctions utilisateurs.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Voir aussi
|
||||
<link linkend="api.register.function">register_function()</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
|
@@ -1,17 +1,21 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.11 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.13 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.syntax.variables">
|
||||
<title>Variables</title>
|
||||
<para>
|
||||
Les variables de template commence par un signe dollar (<literal>$</literal>).
|
||||
Elles peuvent contenir des nombres, des lettres et des underscores, tout
|
||||
comme une <ulink url="&url.php-manual;language.variables">variable PHP</ulink>.
|
||||
comme une <ulink url="&url.php-manual;language.variables">variable PHP</ulink>.
|
||||
Vous pouvez r<>f<EFBFBD>rencer des tableaux index<65>s
|
||||
num<75>riquement ou non. Vous pouvez aussi r<>f<EFBFBD>rencer des propri<72>t<EFBFBD>s d'objet
|
||||
ainsi que des m<>thodes. Les <link linkend="language.config.variables">variables des fichiers de
|
||||
num<75>riquement ou non. Vous pouvez aussi r<>f<EFBFBD>rencer des propri<72>t<EFBFBD>s d'objet
|
||||
ainsi que des m<>thodes.
|
||||
</para>
|
||||
<para>
|
||||
Les <link linkend="language.config.variables">variables des fichiers de
|
||||
configuration</link> sont une exception <20> la synthaxe utilisant un signe dollar. Elles peuvent <20>tre
|
||||
r<>f<EFBFBD>renc<6E>es en les entourant du signe di<64>se (<literal>#</literal>) ou avec la variable sp<73>ciale
|
||||
r<>f<EFBFBD>renc<6E>es en les entourant du signe di<64>se (<literal>#</literal>) ou via la variable sp<73>ciale
|
||||
<link linkend="language.variables.smarty.config">$smarty.config</link>.
|
||||
</para>
|
||||
<example>
|
||||
@@ -27,7 +31,7 @@
|
||||
{#foo#} <-- affiche la variable du fichier de configuration "foo"
|
||||
{$smarty.config.foo} <-- synonyme pour {#foo#}
|
||||
{$foo[bar]} <-- synthaxe uniquement valide dans une section de boucle, voir {section}
|
||||
{assign var=foo value="baa"}{$foo} <-- affiche "baa", voir {assign}
|
||||
{assign var=foo value='baa'}{$foo} <-- affiche "baa", voir {assign}
|
||||
|
||||
Plusieurs autres combinaisons sont autoris<69>es
|
||||
|
||||
@@ -46,9 +50,10 @@ Plusieurs autres combinaisons sont autoris
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Les variables sp<73>ciales comme get, post, session, etc. sont <20>galement disponibles,
|
||||
Les variables sp<73>ciales comme $_GET, $_SESSION, etc. sont <20>galement disponibles,
|
||||
lisez le chapitre sur les variables r<>serv<72>es
|
||||
<link linkend="language.variables.smarty">$smarty</link> pour plus de d<>tails.
|
||||
<emphasis><link linkend="language.variables.smarty">$smarty</link></emphasis>
|
||||
pour plus de d<>tails.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
@@ -1,15 +1,23 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.4 Maintainer: gerald Status: ready -->
|
||||
<!-- EN-Revision: 1.6 Maintainer: gerald Status: ready -->
|
||||
|
||||
<chapter id="language.builtin.functions">
|
||||
<title>Fonctions natives</title>
|
||||
<para>
|
||||
Smarty est fourni en standard avec plusieurs fonctions natives.
|
||||
Les fonctions natives sont partie int<6E>grante du language de template.
|
||||
Vous ne pouvez pas cr<63>er de fonctions utilisateurs qui portent le m<>me nom
|
||||
qu'une fonction native. Vous ne pouvez pas non plus en modifier le
|
||||
comportement.
|
||||
Ces fonctions natives sont partie int<6E>grante du moteur de Smarty.
|
||||
Vous ne pouvez pas cr<63>er de
|
||||
<link linkend="language.custom.functions">fonctions utilisateurs</link>
|
||||
qui portent le m<>me nom qu'une fonction native et vous ne pouvez pas non
|
||||
plus en modifier le comportement.
|
||||
</para>
|
||||
<para>
|
||||
Quelques-unes de ces fonctions ont un attribut
|
||||
<emphasis role="bold">assign</emphasis> qui r<>cup<75>re le r<>sultat de la
|
||||
fonction et la place dans une variable nomm<6D>e dans le template plut<75>t que
|
||||
de l'afficher.tout comme la fonction
|
||||
<link linkend="language.function.assign">{assign}</link>.
|
||||
</para>
|
||||
|
||||
&designers.language-builtin-functions.language-function-capture;
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.11 Maintainer: gerald Status: ready -->
|
||||
<!-- EN-Revision: 1.13 Maintainer: gerald Status: ready -->
|
||||
|
||||
<sect1 id="language.function.capture">
|
||||
<title>{capture}</title>
|
||||
@@ -8,14 +8,19 @@
|
||||
<para>
|
||||
{capture} est utilis<69> pour r<>cup<75>rer la sortie d'<27>l<EFBFBD>ments dans une variable
|
||||
au lieu de les afficher. Tout contenu situ<74> entre {capture
|
||||
name="foo"} et {/capture} est intercept<70> dans une variable dont le nom est
|
||||
sp<73>cifi<66> dans l'attribut name. Le contenu captur<75> peut <20>tre utilis<69> dans
|
||||
name='foo'} et {/capture} est intercept<70> dans une variable dont le nom est
|
||||
sp<73>cifi<66> dans l'attribut name.
|
||||
</para>
|
||||
<para>
|
||||
Le contenu captur<75> peut <20>tre utilis<69> dans
|
||||
le template par l'interm<72>diaire de la variable sp<73>ciale
|
||||
<link linkend="language.variables.smarty.capture">$smarty.capture.foo</link>
|
||||
o<> "foo" est la valeur de l'attribut name. Si vous ne donnez pas de valeur
|
||||
<20> l'attribut name, alors "default" est utilis<69>. Toutes les commandes
|
||||
{capture} doivent <20>tre utilis<69>es de paire avec {/capture}. Vous pouvez
|
||||
imbriquer les demandes de captures.
|
||||
<20> l'attribut name, alors "default" est utilis<69> en tant que nom, i.e.
|
||||
$smarty.capture.default.
|
||||
</para>
|
||||
<para>
|
||||
{capture} peut <20>tre imbriqu<71>.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
@@ -65,38 +70,32 @@
|
||||
</caution>
|
||||
<para>
|
||||
<example>
|
||||
<title>Capturer le contenu d'un template.</title>
|
||||
<title>{capture} avec le nom de l'attribut</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* nous ne voulons afficher une ligne que si cette derni<6E>re est activ<EFBFBD>. *}
|
||||
{* nous ne voulons afficher une balise div que si le contenu est affich<EFBFBD>. *}
|
||||
{capture name=banner}
|
||||
{include file='get_banner.tpl'}
|
||||
{/capture}
|
||||
{if $smarty.capture.banner ne ""}
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
{$smarty.capture.banner}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div id="banner">{$smarty.capture.banner}</div>
|
||||
{/if}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Capturer le contenu dans une variable</title>
|
||||
<title>{capture} dans une variable de template</title>
|
||||
<para>Cet exemple d<>montre <20>galement la fonction
|
||||
<link linkend="language.function.popup">{popup}</link>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{capture name=some_content assign=popText}
|
||||
.... du contenu ....
|
||||
Le serveur est {$smarty.server.SERVER_NAME|upper} sur {$smarty.server.SERVER_ADDR}<br>
|
||||
Votre IP est {$smarty.server.REMOTE_ADDR}.
|
||||
{/capture}
|
||||
|
||||
<a href="#" {popup caption='Help' text=$popText}>help</a>
|
||||
<a href="#" {popup caption='Information sur le serveur' text=$popText}>Aide</a>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.7 Maintainer: gerald Status: ready -->
|
||||
<!-- EN-Revision: 1.9 Maintainer: gerald Status: ready -->
|
||||
|
||||
<sect1 id="language.function.insert">
|
||||
<title>{insert}</title>
|
||||
@@ -9,7 +9,7 @@
|
||||
Les balises {insert} fonctionnent <20> peu pr<70>s comme les balises
|
||||
<link linkend="language.function.include">include</link>,
|
||||
<20> l'exception que leur sortie n'est PAS plac<61>e en cache lorsque
|
||||
<link linkend="caching">le cache</link> est activ<69>.
|
||||
<link linkend="caching">le cache</link> du template est activ<69>.
|
||||
Les balises {insert} seront ex<65>cut<75>es <20> chaque appel du template.
|
||||
</para>
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.8 Maintainer: gerald Status: ready -->
|
||||
<!-- EN-Revision: 1.11 Maintainer: gerald Status: ready -->
|
||||
|
||||
<sect1 id="language.function.php">
|
||||
<title>{php}</title>
|
||||
@@ -9,11 +9,11 @@
|
||||
template. Ils ne seront pas ignor<6F>s, quelle que soit la valeur de <link
|
||||
linkend="variable.php.handling">$php_handling</link>. Pour les
|
||||
utilisateurs avanc<6E>s seulement, son utilisation n'est normalement pas
|
||||
n<>cessaire.
|
||||
n<>cessaire et n'est pas recommand<6E>e.
|
||||
</para>
|
||||
<example>
|
||||
<title>Balises {php}</title>
|
||||
<programlisting role="php">
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{php}
|
||||
// inclusion directe d'un script PHP
|
||||
@@ -32,14 +32,26 @@
|
||||
</note>
|
||||
|
||||
<example>
|
||||
<title>Balises {php} avec le mot cl<63> global</title>
|
||||
<title>Balises {php} avec le mot cl<63> global et assignement d'une variable</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
{php}
|
||||
global $foo, $bar;
|
||||
if($foo == $bar){
|
||||
// do something
|
||||
echo 'Ceci appara<72>tera dans le template';
|
||||
}
|
||||
$this->assign('varX','Strawberry');
|
||||
{/php}
|
||||
<strong>{$varX}</strong> est ma gl<67>ce favorite
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ce qui suit n'est vrament PAS recommand<6E>, vu que c'est dans le contexte du template.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{php}
|
||||
print_r($some_array);
|
||||
{/php}
|
||||
]]>
|
||||
</programlisting>
|
||||
|
@@ -1,11 +1,12 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.7 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.8 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.function.assign">
|
||||
<title>{assign}</title>
|
||||
<para>
|
||||
{assign} est utilis<69> pour d<>clarer ou modifier des variables de template.
|
||||
{assign} est utilis<69> pour d<>clarer des variables de template
|
||||
<emphasis role="bold">durant l'ex<65>cution du template</emphasis>.
|
||||
</para>
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
@@ -73,7 +74,7 @@ La valeur de $name est Bob.
|
||||
<example>
|
||||
<title>Acc<EFBFBD>s aux variables {assign} depuis un script PHP.</title>
|
||||
<para>
|
||||
Pour acc<63>der aux variables {assign} depuis PHP, utilisez
|
||||
Pour acc<63>der aux variables {assign} depuis le script PHP, utilisez
|
||||
<link linkend="api.get.template.vars">get_template_vars()</link>.
|
||||
Cependant, les variables ne sont disponibles qu'apr<70>s ou pendant l'ex<65>cution du
|
||||
template, comme le montre l'exemple suivant :
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.4 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.6 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.function.eval">
|
||||
<title>{eval}</title>
|
||||
@@ -71,9 +71,8 @@
|
||||
<title>{eval}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
setup.conf
|
||||
----------
|
||||
|
||||
#setup.conf
|
||||
#----------
|
||||
emphstart = <strong>
|
||||
emphend = </strong>
|
||||
titre = Bienvenue sur la homepage de {$company} !
|
||||
@@ -82,16 +81,16 @@ ErrorDept = Vous devez sp
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
O<> index.tpl est :
|
||||
O<> le template est :
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{config_load file="setup.conf"}
|
||||
{config_load file='setup.conf'}
|
||||
|
||||
{eval var=$foo}
|
||||
{eval var=#titre#}
|
||||
{eval var=#ErrorVille#}
|
||||
{eval var=#ErrorDept# assign="state_error"}
|
||||
{eval var=#ErrorDept# assign='state_error'}
|
||||
{$state_error}
|
||||
]]>
|
||||
</programlisting>
|
||||
@@ -104,10 +103,33 @@ Ceci est le contenu de foo.
|
||||
Bienvenue sur la homepage de FictifLand.
|
||||
Vous devez sp<73>cifier un nom de <strong>ville</strong>.
|
||||
Vous devez sp<73>cifier un <strong>d<>partement</strong>.
|
||||
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>un autre exemple avec {eval}</title>
|
||||
<para>
|
||||
Ceci va afficher le nom du serveur (en majuscule) et son IP.
|
||||
La variable $str <20>galement venir d'une requ<71>te de base de donn<6E>es.
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
// script php
|
||||
$str = 'Le nom du serveur est {$smarty.server.SERVER_NAME|upper} '
|
||||
.'at {$smarty.server.SERVER_ADDR}';
|
||||
$smarty->assign('foo',$str);
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
O<> le template est :
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{eval var=$foo}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
|
@@ -1,17 +1,21 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.19 Maintainer: gerald Status: ready -->
|
||||
<!-- EN-Revision: 1.23 Maintainer: gerald Status: ready -->
|
||||
|
||||
<chapter id="language.modifiers">
|
||||
<title>Modificateurs de variables</title>
|
||||
<para>
|
||||
Les modificateurs de variables peuvent <20>tre appliqu<71>s aux variables,
|
||||
fonctions utilisateurs ou cha<68>nes de caract<63>res. Pour appliquer un modificateur
|
||||
Les modificateurs de variables peuvent <20>tre appliqu<71>s aux
|
||||
<link linkend="language.syntax.variables">variables</link>,
|
||||
<link linkend="language.custom.functions">fonctions utilisateurs</link>
|
||||
ou cha<68>nes de caract<63>res. Pour appliquer un modificateur
|
||||
de variable, tappez une valeure suivie de <literal>|</literal>
|
||||
(pipe) et du nom du modificateur. Un modificateur de variable
|
||||
est succeptible d'accepter des param<61>tres additionnels, qui en affectent
|
||||
le comportement. Ces param<61>tres suivent le nom du modificateur et
|
||||
sont s<>par<61>s par un <literal>:</literal> (deux points).
|
||||
De plus, toutes les fonctions PHP peuvent <20>tre utilis<69>es en tant que modifieurs
|
||||
implicitement.
|
||||
</para>
|
||||
<example>
|
||||
<title>Exemple de modificateur</title>
|
||||
@@ -21,21 +25,35 @@
|
||||
{$titre|upper}
|
||||
|
||||
{* modificateur avec param<61>tres *}
|
||||
{$titre|truncate:40:"..."}
|
||||
{$titre|truncate:40:'...'}
|
||||
|
||||
{* applique un modificateur <20> un param<61>tre de fonction *}
|
||||
{html_table loop=$mavariable|upper}
|
||||
{* avec param<61>tres *}
|
||||
{html_table loop=$mavariable|truncate:40:"..."}
|
||||
{html_table loop=$mavariable|truncate:40:'...'}
|
||||
|
||||
{* applique un modificateur <20> une chaine de caract<63>res *}
|
||||
{"foobar"|upper}
|
||||
{'foobar'|upper}
|
||||
|
||||
{* utilise date_format pour mettre en forme la date *}
|
||||
{$smarty.now|date_format:"%d/%m/%Y"}
|
||||
|
||||
{* applique un modificateur <20> une fonction utilisateur *}
|
||||
{mailto|upper address="moi@domaine.dom"}
|
||||
{mailto|upper address='smarty@example.com'}
|
||||
|
||||
{* utilisation de la fonction PHP str_repeat *}
|
||||
{'='|str_repeat:80}
|
||||
|
||||
{* Compteur PHP *}
|
||||
{$myArray|@count}
|
||||
|
||||
{* m<>lange al<61>atoire des IP du serveur gr<67>ce <20> PHP *}
|
||||
{$smarty.server.SERVER_ADDR|shuffle}
|
||||
|
||||
(* ceci va mettre en majuscule et tronque le tableau *}
|
||||
<select name="name_id">
|
||||
{html_options output=$myArray|upper|truncate:20}
|
||||
</select>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
@@ -49,21 +67,21 @@
|
||||
</para>
|
||||
<para>
|
||||
Les modificateurs sont charg<72>s automatiquement depuis votre r<>pertoire
|
||||
de plugin <link linkend="variable.plugins.dir">$plugins_dir</link> (voir aussi:
|
||||
<link linkend="plugins.naming.conventions">convention de nommage</link>)
|
||||
ou peuvent <20>tre enregistr<74>s explicitement (voir: <link
|
||||
linkend="api.register.modifier">register_modifier</link>).
|
||||
de plugin <link linkend="variable.plugins.dir">$plugins_dir</link>
|
||||
ou peuvent <20>tre enregistr<74>s explicitement avec <link
|
||||
linkend="api.register.modifier">register_modifier()</link> ; ceci est utile
|
||||
pour partager une fonction dans un scirpt PHP et les templates Smarty.
|
||||
</para>
|
||||
<para>
|
||||
De m<>me, toutes les fonction php peuvent <20>tre utilis<69>es comme modificateur,
|
||||
Toutes les fonction PHP peuvent <20>tre utilis<69>es comme modificateur,
|
||||
sans autre d<>claration. (L'exemple avec
|
||||
<literal>@count</literal> ci dessus utilise la fonction count(), et non un modificateur
|
||||
<literal>@count</literal> ci-dessus utilise la fonction count(), et non un modificateur
|
||||
Smarty. Utiliser des fonctions PHP en tant que modificateur comporte deux
|
||||
risques: Premi<6D>rement: il arrive que l'ordre des param<61>tres ne soit pas
|
||||
celui attendu (<literal>{"%2.f"|sprintf:$float}</literal> fonctionne,
|
||||
mais demande une syntaxe plus naturelle, par exemple<literal>{$float|string_format:"%2.f"}</literal>
|
||||
fourni dans la distribution Smarty). Deuxi<78>mement : lorsque <link
|
||||
linkend="variable.security">$security</link> est activ<69>, les fonctions php
|
||||
linkend="variable.security">$security</link> est activ<69>, les fonctions PHP
|
||||
utilis<69>es en tant que modificateur doivent <20>tre explicitement d<>clar<61>es
|
||||
comme connues dans le tableau <link linkend="variable.security.settings">
|
||||
$security_settings['MODIFIER_FUNCS']</link>.
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.6 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.8 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.modifier.default">
|
||||
<title>default</title>
|
||||
@@ -9,6 +9,14 @@
|
||||
Si la variable est vide ou ind<6E>finie, la valeur donn<6E>e est affich<63>e
|
||||
en lieu et place. Default attends un seul argument.
|
||||
</para>
|
||||
<para>
|
||||
<note>
|
||||
<para>
|
||||
Avec error_reporting(E_ALL), les variables non d<>clar<61>es lanceront toujours une erreur
|
||||
dans le template. Cette fonction est utile pour remplacer les cha<68>nes vides ou de longueurs vides.
|
||||
</para>
|
||||
</note>
|
||||
</para>
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
|
@@ -1,13 +1,13 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.10 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.14 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.modifier.escape">
|
||||
<title>escape</title>
|
||||
<para>
|
||||
"Echappe" les caract<63>res sp<73>ciaux html, d'url, pour
|
||||
les quotes d'une cha<68>ne, les valeurs
|
||||
hexad<EFBFBD>cimales, les entit<69>s hexad<61>cimales ou javascript.
|
||||
Utile pour encoder / <20>chapper une variable pour quelles soient compatibles
|
||||
pour les URL Html, pour les hexad<61>cimaux, pour les entit<69>s hexad<61>cimales, pour javascript
|
||||
et pour les e-mails.
|
||||
Par d<>faut, ce param<61>tre est html.
|
||||
</para>
|
||||
<informaltable frame="all">
|
||||
@@ -76,12 +76,13 @@ $smarty->assign('EmailAddress','smarty@example.com');
|
||||
<![CDATA[
|
||||
{$titreArticle}
|
||||
{$titreArticle|escape}
|
||||
{$titreArticle|escape:"html"} {* escapes & " ' < > *}
|
||||
{$titreArticle|escape:"htmlall"} {* escapes ALL html entities *}
|
||||
{$titreArticle|escape:"url"}
|
||||
{$titreArticle|escape:"quotes"}
|
||||
{$titreArticle|escape:'html'} {* escapes & " ' < > *}
|
||||
{$titreArticle|escape:'htmlall'} {* escapes ALL html entities *}
|
||||
{$titreArticle|escape:'url'}
|
||||
{$titreArticle|escape:'quotes'}
|
||||
<a href="mailto:{$EmailAddress|escape:"hex"}">{$EmailAddress|escape:"hexentity"}</a>
|
||||
{$EmailAddress|escape:'mail'}
|
||||
{$EmailAddress|escape:'mail'} {* ceci convertit l'e-mail en texte *}
|
||||
{'mail@example.com'|escape:'mail'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
@@ -97,6 +98,7 @@ $smarty->assign('EmailAddress','smarty@example.com');
|
||||
\'Stiff Opposition Expected to Casketless Funeral Plan\'
|
||||
<a href="mailto:%62%6f%..snip..%65%74">bob..snip..et</a>
|
||||
smarty [AT] example [DOT] com
|
||||
mail [AT] example [DOT] com
|
||||
]]>
|
||||
</screen>
|
||||
<para>
|
||||
@@ -108,11 +110,21 @@ smarty [AT] example [DOT] com
|
||||
<a href="{$SCRIPT_NAME}?page=foo&rewind={$smarty.server.REQUEST_URI|urlencode}">click here</a>
|
||||
]]>
|
||||
</screen>
|
||||
<para>
|
||||
Et ceci est utile pour les e-mails, mais lisez plut<75>t la documentation de
|
||||
<link linkend="language.function.mailto">{mailto}</link></para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
{* email address mangled *}
|
||||
<a href="mailto:{$EmailAddress|escape:'hex'}">{$EmailAddress|escape:'mail'}</a>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Voir aussi la
|
||||
<link linkend="language.escaping">d<EFBFBD>sactivation de l'analyse de Smarty</link> et
|
||||
le <link linkend="tips.obfuscating.email">mascage des adresses E-mail</link>.
|
||||
l'<link linkend="language.escaping">anayse Smarty d'<27>chappement</link>,
|
||||
<link linkend="language.function.mailto">{mailto}</link> et
|
||||
le <link linkend="tips.obfuscating.email">mascage des adresses e-mail</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.4 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.5 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.modifier.nl2br">
|
||||
<title>nl2br</title>
|
||||
@@ -10,7 +10,7 @@
|
||||
</para>
|
||||
<example>
|
||||
<title>nl2br</title>
|
||||
<programlisting role="php">
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
@@ -20,30 +20,30 @@ $smarty->assign('articleTitle',
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
O<EFBFBD> le template est :
|
||||
</para>
|
||||
<programlisting>
|
||||
</programlisting>
|
||||
<para>
|
||||
O<EFBFBD> le template est :
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$TitreArticle|nl2br}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ce qui donne en sortie :
|
||||
</para>
|
||||
<screen>
|
||||
</programlisting>
|
||||
<para>
|
||||
Affichera :
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Pluie ou soleil attendu<br />aujourd'hui, nuit noire
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Voir aussi
|
||||
<link linkend="language.modifier.wordwrap">word_wrap</link>,
|
||||
<link linkend="language.modifier.count.paragraphs">count_paragraphs</link> et
|
||||
<link linkend="language.modifier.count.sentences">count_sentences</link>.
|
||||
</para>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Voir aussi
|
||||
<link linkend="language.modifier.wordwrap">word_wrap</link>,
|
||||
<link linkend="language.modifier.count.paragraphs">count_paragraphs</link> et
|
||||
<link linkend="language.modifier.count.sentences">count_sentences</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.5 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.6 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.modifier.truncate">
|
||||
<title>truncate</title>
|
||||
@@ -90,6 +90,7 @@ O
|
||||
{$titreArticle|truncate:30:"---"}
|
||||
{$titreArticle|truncate:30:"":true}
|
||||
{$titreArticle|truncate:30:"...":true}
|
||||
{$articleTitle|truncate:30:'..':true:true}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
@@ -103,6 +104,7 @@ Deux soeurs r
|
||||
Deux soeurs r<>unies apr<70>s---
|
||||
Deux soeurs r<>unies apr<70>s 18 a
|
||||
Deux soeurs r<>unies apr<70>s 1...
|
||||
Deux soeurs ... de s<>paration.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
@@ -1,12 +1,12 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.12 Maintainer: yannick Status: ready -->
|
||||
<!-- EN-Revision: 1.14 Maintainer: yannick Status: ready -->
|
||||
|
||||
<sect1 id="language.variables.smarty">
|
||||
<title>Variable r<>serv<72>e {$smarty}</title>
|
||||
<para>
|
||||
La variable PHP r<>serv<72>e {$smarty} peut <20>tre utilis<69>e pour acc<63>der <20> plusieurs
|
||||
variables sp<EFBFBD>ciales du template. En voici la liste compl<70>te.
|
||||
variables d'environnements. En voici la liste compl<70>te.
|
||||
</para>
|
||||
|
||||
<sect2 id="language.variables.smarty.request">
|
||||
@@ -51,6 +51,12 @@
|
||||
directement, cependant, {$smarty.server.SCRIPT_NAME} est
|
||||
la solution propos<6F>e pour acc<63>der <20> cette valeur.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<a href="{$SCRIPT_NAME}?page=smarty">click me</a>
|
||||
<a href="{$smarty.server.SCRIPT_NAME}?page=smarty">click me</a>
|
||||
]]>
|
||||
</programlisting>
|
||||
</note>
|
||||
</sect2>
|
||||
|
||||
@@ -59,10 +65,12 @@
|
||||
<para>
|
||||
Le <ulink url="&url.php-manual;function.time">timestamp</ulink>
|
||||
courant peut <20>tre r<>cup<75>r<EFBFBD> gr<67>ce <20> {$smarty.now}.
|
||||
Le nombre obtenu correspond au nombre de secondes <20>coul<75>es depuis
|
||||
La valeur correspond au nombre de secondes <20>coul<75>es depuis
|
||||
Epoch (1 Janvier 1970) et peut <20>tre pass<73> directement au modificateur
|
||||
de variable date <link linkend="language.modifier.date.format">date_format</link>
|
||||
<20> des fins d'affichage.
|
||||
<20> des fins d'affichage. Notez que time() est appel<65> <20> chaque invocation, i.e.
|
||||
un script qui prend 3 secondes <20> s'ex<65>cuter avec $smarty.now au d<>but et <20> la fin montrera
|
||||
les 3 secondes de diff<66>rence.
|
||||
</para>
|
||||
<example>
|
||||
<title>Utilisation de {$smarty.now}</title>
|
||||
@@ -82,9 +90,16 @@
|
||||
Voir aussi les <link linkend="smarty.constants">constantes smarty</link>.
|
||||
</para>
|
||||
<example>
|
||||
<title>Utiliser {$smarty.const}</title>
|
||||
<title>Utiliser {$smarty.const} pour acc<63>der aux constantes</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
// la constante d<>finie dans PHP
|
||||
define('_MY_CONST_VAL','CHERRIES');
|
||||
]]>
|
||||
</programlisting>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* la sortie de la constante PHP dans le template *}
|
||||
{$smarty.const._MA_CONSTANTE_}
|
||||
]]>
|
||||
</programlisting>
|
||||
@@ -94,9 +109,9 @@
|
||||
<sect2 id="language.variables.smarty.capture">
|
||||
<title>{$smarty.capture}</title>
|
||||
<para>
|
||||
La capture r<>alis<69>e via
|
||||
La sortie du template r<>alis<69>e via
|
||||
<link linkend="language.function.capture">{capture}..{/capture}</link>
|
||||
peut <20>tre r<>cup<75>r<EFBFBD>e par l'interm<72>diaire de la variable {$smarty}. Voir la section
|
||||
peut <20>tre r<>cup<75>r<EFBFBD>e par l'interm<72>diaire de la variable {$smarty.capture}. Voir la section
|
||||
sur <link linkend="language.function.capture">{capture}</link> pour un
|
||||
exemple <20> ce sujet.
|
||||
</para>
|
||||
@@ -120,27 +135,47 @@
|
||||
des boucles 'section' et 'foreach'. Voir la documentation de
|
||||
<link linkend="language.function.section">{section}</link> et
|
||||
<link linkend="language.function.foreach">{foreach}</link>.
|
||||
Ils ont des valeurs vraiment utiles comme .first, .index, etc.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.template">
|
||||
<title>{$smarty.template}</title>
|
||||
<para>
|
||||
Cette variable contient le nom du template en cours de traitement.
|
||||
Retourne le nom du template courant. Cet exemple montre le container.tpl
|
||||
ainsi que le banner.tpl inclu avec {$smarty.template}.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<b>Le conteneur principal est {$smarty.template}</b>
|
||||
{include file='banner.tpl}
|
||||
]]>
|
||||
</programlisting>
|
||||
Affichera :
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<b>Le conteneur principal est container.tpl</b>
|
||||
banner.tpl
|
||||
]]>
|
||||
</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.version">
|
||||
<title>{$smarty.version}</title>
|
||||
<para>
|
||||
Cette variable contient la version de Smarty utilis<EFBFBD>e pour compiler un template.
|
||||
Retourne la version de Smarty ayant servie <20> compiler le template.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<div id="footer">G<>n<EFBFBD>r<EFBFBD> par Smarty {$smarty.version}</div>
|
||||
]]>
|
||||
</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.ldelim">
|
||||
<title>{$smarty.ldelim}, {$smarty.rdelim}</title>
|
||||
<para>
|
||||
Cette variable est utilis<69>e pour afficher le d<>l<EFBFBD>miteur gauche et le d<>limiteur droit. Lisez aussi
|
||||
Ces variables sont utilis<69>es pour afficher le d<>l<EFBFBD>miteur gauche et le d<>limiteur droit. Lisez aussi
|
||||
la partie <link linkend="language.function.ldelim">{ldelim},{rdelim}</link>.
|
||||
</para>
|
||||
<para>
|
||||
|
Reference in New Issue
Block a user