このレンダラは自分自身では何も出力せず、フォームの構造を配列で返します。 この配列は、後で出力を生成する際に使用されます。 このレンダラと Smarty テンプレートエンジンを使用した例が、 docs/renderers ディレクトリにあります。
フォームの配列は、以下のようになります。
array( 'frozen' => 'フォームが凍結されているかどうか', 'javascript' => 'クライアント側での検証用の javascript', 'attributes' => '<form> タグの属性', 'requirednote => '必須要素の注意書き', // hidden 要素を収集するオプションを設定した場合 'hidden' => 'すべての hidden 要素を集めた html', // 検証エラーがあった場合 'errors' => array( '1st element name' => '最初の要素のエラー', ... 'nth element name' => 'n 番目の要素のエラー' ), // フォームにヘッダがない場合 'elements' => array( element_1, ... element_N ) // フォームにヘッダがある場合 'sections' => array( array( 'header' => '最初のヘッダのテキスト', 'name' => '最初のヘッダの名前', 'elements' => array( element_1, ... element_K1 ) ), ... array( 'header' => 'M 番目のヘッダ', 'elements' => array( element_1, ... element_KM ) ) ) ); |
array( 'name' => '要素の名前', 'value' => '要素の値', 'type' => '要素の型', 'frozen' => '要素が凍結されているかどうか', 'label' => '要素のラベル', 'required' => '要素が必須かどうか', 'error' => '要素に関連するエラー', 'style' => '要素の型に関する情報 (例: Smarty)', // グループでない要素の場合 'html' => '要素の HTML' // 要素がグループである場合 'separator' => 'グループ要素のセパレータ', 'elements' => array( element_1, ... element_N ) ); |
ティップ HTML_QuickForm::toArray() メソッドは、Array レンダラを内部で使用しています。