diff options
Diffstat (limited to 'libs/SimpleValidator/Validators/Integer.php')
-rw-r--r-- | libs/SimpleValidator/Validators/Integer.php | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/libs/SimpleValidator/Validators/Integer.php b/libs/SimpleValidator/Validators/Integer.php new file mode 100644 index 00000000..5afdc1e0 --- /dev/null +++ b/libs/SimpleValidator/Validators/Integer.php @@ -0,0 +1,25 @@ +<?php + +namespace SimpleValidator\Validators; + +class Integer extends Base +{ + public function execute(array $data) + { + if ($this->isFieldNotEmpty($data)) { + if (is_string($data[$this->field])) { + + if ($data[$this->field][0] === '-') { + return ctype_digit(substr($data[$this->field], 1)); + } + + return ctype_digit($data[$this->field]); + } + else { + return is_int($data[$this->field]); + } + } + + return true; + } +} |