La documentation sur les assistants de vue (view helpers) du Zend Framework est un peu sommaire, il faut se plonger dans le code source pour découvrir toutes les possibilités.
Prenons par exemple formRadio qui permet de créer des boutons radios. La signature de cet assistant de vue est la suivante :
<?php
function formRadio(
$name,
$value = null,
$attribs = null,
$options = null,
$listsep = "<br />\n"
)
?>
L'argument listsep qui n'est pas documenté et qui permet de définir le code HTML qui sera inséré entre chaque bouton radio. Par défaut, il est initialisé avec un retour à la ligne, ce qui fait que les boutons radio se présenteront sur une colonne. Si on les veut tous sur la même ligne, il suffit de passer une chaine vide.
On peut également définir le séparateur en le passant dans l'argument $attribs.
escape est un autre argument "magique" qui permet d'éviter que le libellé des options ne soit échappé.
Enfin, on dispose de l'attribut disable qui permet de désactiver toutes les options en passant true ou seulement certaines options en passant leurs clés dans un tableau.
<?php
// Désactive l'option 1
echo $this->formRadio(
'option',
0,
array(
'disable' => array(0)
),
array('Option 1', 'Option 2')
);
?>
On peut définir les attributs des label en les passant dans $attribs avec le préfixe label_ ou label.
<?php
// Ajoute une classe CSS radio
echo $this->formRadio('option', 0, array('label_class' => 'radio'),
array('Option 1', 'Option 2')
);
?>
Produit le code HTML suivant :
<label class="radio" for="option-0"> <input name="option" id="option-0" value="0" checked="checked" type="radio"> Option 1 </label> <br> <label class="radio" for="option-1"> <input name="option" id="option-1" value="1" type="radio"> Option 2 </label>
Ajouter un commentaire