in HTML normale, potremmo avere un campo di matrice come person[]
array input come name = "persona []" in forma Zend
<input name="person[]" type="text" />
<input name="person[]" type="text" />
<input name="person[]" type="text" />
Per quanto ne so, non ha Zend_Form questo. Ho letto another answer che ha suggerito che potrebbe essere fatto utilizzando un decoratore che aggiungerebbe il []
nel posto giusto. Questo è il codice per quella specifica domanda
$html = ''; // some code html
$i = 0;
foreach ($element->getMultiOptions() as $value => $label){
$html .= '<input type="checkbox" '
. 'name="'.$element->getName().'[]" '
. 'id="'$element->getName()'-'.$i.'" '
. 'value="'.$value.'" />';
$i++;
}
return $html;
Questo appare come un buon inizio, ma mi chiedo se si utilizza un decoratore è sufficiente. I valori restituiti devono essere letti correttamente e consegnati al server, quindi convalidati sul lato server. Quindi un decoratore ha un'idea sbagliata? Un elemento personalizzato avrebbe più senso qui? Non ho visto un buon esempio che mostra come ciò possa essere fatto.
Controllare il manuale: http://framework.zend.com/manual/en/zend.form.advanced.html –