예제 #1
0
파일: Request.php 프로젝트: boolive/core
 function setFilter(Rule $rule)
 {
     $this->filtered = Check::filter($this->input, $rule, $this->errors);
     return !isset($this->errors) || !$this->errors->isExist();
 }
예제 #2
0
파일: Values.php 프로젝트: boolive/core
 /**
  * Выбор значения с применением правила
  * @param null|\boolive\core\values\Rule $rule
  * @param null $error
  * @return mixed
  */
 function get($rule = null, &$error = null)
 {
     // Если не указано правило и значение уже отфильтровано, то повторно фильтровать не нужно
     if (!$rule && $this->_filtered) {
         return $this->getValue();
     }
     // Если правило не указано, то берём по умолчанию
     if (!$rule) {
         $rule = $this->getRule();
     }
     // Если правило определено
     if ($rule instanceof Rule) {
         return Check::filter($this->getValue(), $rule, $error);
     }
     $error = new Error(['Нет правила'], 'NO_RULE');
     return null;
 }