Compare commits

..

No commits in common. "master" and "1.0.0" have entirely different histories.

1 changed files with 8 additions and 14 deletions

View File

@ -174,7 +174,7 @@ class Validator
public function get($field, $default = null)
{
$value = isset($this->values[$field]) ? trim($this->values[$field]) : $default;
if (strlen($value) == 0) $value = $default;
if (empty($value)) $value = $default;
return $value;
}
@ -273,9 +273,7 @@ class Validator
{
foreach ($this->rules as $field => $rules)
{
$rules_names = array_map(function($rule) { return $rule['rule']; }, $rules);
$nullable = !in_array('required', $rules_names) && !in_array('required_file', $rules_names) && !in_array('required_files', $rules_names);
foreach ($rules as $rule) $this->test($field, $rule, $nullable);
foreach ($rules as $rule) $this->test($field, $rule);
}
$this->validated = true;
@ -283,7 +281,7 @@ class Validator
return (count($this->errors) == 0);
}
public function test($field, $rule, $nullable = false)
public function test($field, $rule)
{
$name = $rule['rule'];
$data = $rule['data'];
@ -302,16 +300,16 @@ class Validator
$success = !(is_null($value));
break;
case 'integer':
$success = (filter_var($value, FILTER_VALIDATE_INT) !== false);
$success = (filter_var($value, FILTER_VALIDATE_INT) ? true : false);
break;
case 'float':
$success = (filter_var($value, FILTER_VALIDATE_FLOAT) !== false);
$success = (filter_var($value, FILTER_VALIDATE_FLOAT) ? true : false);
break;
case 'boolean':
$success = (filter_var($value, FILTER_VALIDATE_BOOLEAN) !== false);
$success = (filter_var($value, FILTER_VALIDATE_BOOLEAN) ? true : false);
break;
case 'email':
$success = (filter_var($value, FILTER_VALIDATE_EMAIL) !== false);
$success = (filter_var($value, FILTER_VALIDATE_EMAIL) ? true : false);
break;
case 'phone':
$_pattern = "/^\+?\d{7,15}$/";
@ -355,11 +353,7 @@ class Validator
// (éwé c'est un switch)
}
if (!$success)
{
if ($nullable && empty($value))
return true;
if (!$success) {
$this->error($field, $name);
}