13.9.6 Layout::eSetBlockData()
La méthode eSetBlockData()
permet de spécifier les valeurs des balises
contenues dans les blocs (e.g. [BLOCK TAG]...[ENDBLOCK TAG]
) pour des
templates HTML ou XML.3.2.12
13.9.6.1 Description
void eSetBlockData ( string $blockTag, array $data = NULL )
La différence entre cette méthode et la méthode setBlockData()
et 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.6.1.1 Avertissements
Aucun.
13.9.6.2 Liste des paramètres
- (string)
tag
- Le nom de la balise du bloc à affecter. Le nom de la balise est spécifié
sans les crochets ouvrant (
[
) et fermant (]
). - (array)
data
- La liste des couples (
TAG
=>valeur
) à affecter dans le bloc.
13.9.6.3 Valeur de retour
Aucune.
13.9.6.4 Erreurs / Exceptions
Aucune.
13.9.6.5 Historique
Aucun.
13.9.6.6 Exemples
- Exemple #1
Fichier de template MOVIES/Layout/movies.xml
:
<ul>[BLOCK MOVIES] <li> <span class="movie_title">[MOVIE_TITLE]</span> (<span class="movie_date">[MOVIE_DATE]</span>) </li>[ENDBLOCK MOVIES]</ul>
Contrôleur :
$layout = new Layout("MOVIES/Layout/movies.xml"); $movies = array( array( 'MOVIE_TITLE' => '"La guerre des étoiles": <Un nouvel espoir>', 'MOVIE_DATE' => '1977' ), array( 'MOVIE_TITLE' => '"La guerre des étoiles": <L\'empire contre-attaque>', 'MOVIE_DATE' => '1980' ), array( 'MOVIE_TITLE' => ('"La guerre des étoiles": <Le retour du Jedi>'), 'MOVIE_DATE' => '1983' ) ); $layout->eSetBlockData('MOVIES', $movies); print $layout->gen();
Résultat :
<ul> <li> <span class="movie_title">"La guerre des étoiles": <Un nouvel espoir></span> (<span class="movie_date">1977</span>) </li> <li> <span class="movie_title">"La guerre des étoiles": <L'empire contre-attaque></span> (<span class="movie_date">1980</span>) </li> <li> <span class="movie_title">"La guerre des étoiles": <Le retour du Jedi></span> (<span class="movie_date">1983</span>) </li> </ul>
13.9.6.7 Notes
Aucune.
13.9.6.8 Voir aussi
- Méthode
Layout::setBlockData()