示例#1
0
 /**
  * Add
  *
  * @param Apishka_Form_FieldAbstract $field
  *
  * @return Apishka_Form_FormAbstract this
  */
 public function addField(Apishka_Form_FieldAbstract $field)
 {
     $this->initializeFields();
     $name = $field->getStructureName();
     if ($this->hasField($name)) {
         throw new LogicException('Field ' . var_export($name, true) . ' already exists in structure');
     }
     $this->_fields[$name] = $field->initialize($this);
     return $this;
 }
示例#2
0
文件: Array.php 项目: apishka/form
 /**
  * Run validations
  *
  * @return mixed
  */
 public function runValidations($value = null)
 {
     $value = parent::runValidations($value);
     $element_value = $this->getElement();
     $element_key = $this->getElementKey();
     if (!$element_key && !$element_value) {
         return $value;
     }
     $result = array();
     foreach ($value as $key => $value) {
         $key = $element_key ? $element_key->runValidations($key) : $key;
         $result[$key] = $element_value ? $element_value->runValidations($value) : $value;
     }
     return $result;
 }