Beispiel #1
0
 /**
  * Конструктор формы.
  * 
  * Параметр $fields - ассоциативный массив, где индексы являются именами полей,
  * а значения - array с правилами валидации поля. (@see \softrock\form\AbstractStaticForm::getRules) 
  * 
  * @param array $fields 
  * @param array $data
  */
 public function __construct($fields, $data = [])
 {
     $this->_fields = array_keys($fields);
     foreach ($fields as $name => $options) {
         $this->_validators[$name] = ValidatorsFactory::create(array_shift($options), $options);
         $this->_data[$name] = null;
     }
     $this->setData($data);
 }
Beispiel #2
0
 public function __construct($data = [])
 {
     $fields = $this->getData();
     foreach ($this->getRules() as $field => $options) {
         if (!array_key_exists($field, $fields)) {
             throw new InvalidFormFieldException("Не найдено поле {$field}");
         } else {
             $this->_validators[$field] = ValidatorsFactory::create(array_shift($options), $options);
         }
     }
     $this->setData($data);
 }