sfForm

 

bind()でフォームオブジェクトにリクエストパラメータを設置する

 $user_info = $request->getParameter('user_info');
 $form->bind($user_info);

bind()済みのフォームオブジェクトからフィールドの値を取り出す

 $field_data = array();
 $form->rewind();  
 while ($key = $form->key()) { // イテレータを使わない場合 → foreach (array('name', 'age', 'sex') as $key) {
      $field = $form[$key];
      $widget = $field->getWidget();
      if ($key == 'age') {
          $choices = $widget->getOption('choices'); // 1:男 2:女だとか
          $val     = $choices[$field->getValue()];
      } else { 
          $val = $field->getValue();
      }
      $field_data[$key] = $val;
      $form->next();
  }
 

参考


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS