summaryrefslogtreecommitdiff
path: root/libs/SimpleValidator/Validators/Range.php
diff options
context:
space:
mode:
Diffstat (limited to 'libs/SimpleValidator/Validators/Range.php')
-rw-r--r--libs/SimpleValidator/Validators/Range.php33
1 files changed, 33 insertions, 0 deletions
diff --git a/libs/SimpleValidator/Validators/Range.php b/libs/SimpleValidator/Validators/Range.php
new file mode 100644
index 00000000..065b2b9d
--- /dev/null
+++ b/libs/SimpleValidator/Validators/Range.php
@@ -0,0 +1,33 @@
+<?php
+
+namespace SimpleValidator\Validators;
+
+class Range extends Base
+{
+ private $min;
+ private $max;
+
+ public function __construct($field, $error_message, $min, $max)
+ {
+ parent::__construct($field, $error_message);
+
+ $this->min = $min;
+ $this->max = $max;
+ }
+
+ public function execute(array $data)
+ {
+ if ($this->isFieldNotEmpty($data)) {
+
+ if (! is_numeric($data[$this->field])) {
+ return false;
+ }
+
+ if ($data[$this->field] < $this->min || $data[$this->field] > $this->max) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+}