/** * Handle dynamic calls to class methods. * * @param string $method * @param array $parameters * @return mixed */ public function __call($method, $parameters) { $rule = lcfirst(substr($method, 8)); if (in_array($rule, $this->_validRules)) { $args = $parameters[2]; $value = $parameters[1]; $ruleObject = RuleFactory::make($rule, $args); return $ruleObject->validate($value); } return parent::__call($method, $parameters); }
/** * Handle dynamic calls to class methods. * * @param string $method * @param array $parameters * * @return mixed */ public function __call($method, $parameters) { try { $rule = substr($method, 8); $args = $parameters[2]; $value = $parameters[1]; $validation = RuleFactory::make($rule, $args); return $validation->validate($value); } catch (Exception $e) { return parent::__call($method, $parameters); } }
/** * {@inheritdoc} */ public function __call($method, $parameters) { if (preg_match('/^validate([A-Z][a-z][a-zA-Z]*)$/', $method, $match) && count($parameters) >= 2) { $className = 'Respect\\Validation\\Rules\\' . ucfirst($match[1]); if (class_exists($className)) { $reflection = new ReflectionClass($className); if (!$reflection->isAbstract() && $reflection->isSubclassOf('Respect\\Validation\\Validatable')) { $arguments = (array) (isset($parameters[2]) ? $parameters[2] : []); $valided = app($className, $arguments)->validate($parameters[1]); } } } if (isset($valided)) { return $valided; } return parent::__call($method, $parameters); }