La manière la plus simple d'ajouter un input text est la suivante
$f[] = array('NomDuChamp', '', '');
Ceci affichera un simple input text avec comme nom : NomDuChamp.
Le deuxième paramètre sert normalement à spécifié le type du champ, comme celui par défaut c'est "text", il suffit de ne pas le spécifier.
Le troisième paramètre sert à affecter une valeur par défaut, nous verrons plus tard.
Maintenant, imaginons que vous vouliez créer un input text en spécifiant directement la taille et le nombre de caractère maximum.
Pour rappel, la taille d'un input text se définit avec l'attribut size
$f->addElement('NomDuChamp', array('type'=>'text','options'=>array('Size'=>50,'Maxlength'=>30)));
Dans notre exemple nous avons donc spécifié un input text avec une taille de 50 et dont le contenu ne peut pas dépasser 30 caractères.
C'est trop compliqué pour vous ?
OK essayez ça alors :
$f[] = array('NomDuChamp', '', '');
$f['NomDuChamp'] = array('Size'=>50,'Maxlength'=>30);
C'est surement plus simple pour les débutants, mais ce n'est pas optimisé, puisque l'on a deux lignes au lieu d'une.
Comme l'input text, voici la manière simple :
$f[] = array('NomDuChamp', 'textarea', '');
Et vous aurez un textarea tout simple
Cela serait bien de pouvoir spécifier des cols et rows et bien c'est simple
$this->addElement('NomDuChamp', array('type'=>'textarea','options'=>array('Cols'=>60,'Rows'=>5,'Wrap'=>'virtual')));
Et comme le input text il y a la manière simplifiée
$f[] = array('NomDuChamp', 'textarea', '');
$f['NomDuChamp'] = array('Cols'=>60,'Rows'=>5);