13.9.4 Layout::eSet()
La méthode eSet()
permet de spécifier les valeurs des balises (e.g. [TAG]
)
de template HTML ou XML.3.2.12
13.9.4.1 Description
void eSet ( string $tag, string $val )
La différence entre cette méthode et la méthode set()
est qu'elle
encode les valeurs lors de l'insertion. L'encodage est réalisée par la
fonction PHP htmlspecialchars()
.
Liste des caractères encodés :
Caractère | Encodage |
---|---|
" | " |
' | &039; |
> | > |
< | < |
13.9.4.1.1 Avertissements
Cette méthode doit être utilisée si le champ est entre '
(quote) ou "
(double-quote).
Si la valeur contient une référence à une [zone][zone], (exemple : "[ZONE
MY:MYZONE]
"), la zone ne sera pas interprétée.
3.2.21 Si la valeur contient une
référence à un paramètre applicatif, (exemple :
"[CORE_CLIENT]
"), le paramètre ne sera pas interprété.
13.9.4.2 Liste des paramètres
- (string)
tag
- Le nom de la balise à affecter. Le nom de la balise est spécifié sans les
crochets ouvrant (
[
) et fermant (]
). - (string)
val
- La valeur à affecter à la balise.
13.9.4.3 Valeur de retour
Aucune.
13.9.4.4 Erreurs / Exceptions
Aucune.
13.9.4.5 Historique
Aucun.
13.9.4.6 Exemples
- Exemple #1
Fichier de template FOO/Layout/bar.xml
:
<div> <p data-name="[NOM]" data-firstname="[PRENOM]"> [Message] </p> </div>
Contrôleur :
$nom = "Doe"; $prenom = 'John dit "l\'inconnu"'; $msg = "Écart admissible : 20 < x < 30"; $layout->eSet("NOM", $nom); $layout->eSet("PRENOM", $prenom); $layout->eSet("MESSAGE", $msg); print $layout->gen();
Résultat :
<div> <p data-name="Doe" data-firstname="John dit "l'inconnu"> Écart admissible : 20 < x < 30 </p> </div>
13.9.4.7 Notes
Attention, dans les cas de parties d'url, il faut utiliser la fonction
urlencode
au lieu de htmlspecialchars
afin de garantir l'intégrité de l'url. Dans ce cas, il faut utiliser la méthode
Layout::set()
et appeler manuellement urlencode
.
13.9.4.8 Voir aussi
- Méthode
Layout::set()
- Chapitre Encodage pour format HTML