diff --git a/src/Rules/Between.php b/src/Rules/Between.php index 8bb936b..fa4df9c 100644 --- a/src/Rules/Between.php +++ b/src/Rules/Between.php @@ -17,8 +17,8 @@ public function check($value) $min = (int) $this->parameter('min'); $max = (int) $this->parameter('max'); - - if (is_int($value)) { + + if (is_int($value) || is_float($value)) { return $value >= $min AND $value <= $max; } elseif(is_string($value)) { return mb_strlen($value, 'UTF-8') >= $min AND mb_strlen($value, 'UTF-8') <= $max; diff --git a/tests/Rules/BetweenTest.php b/tests/Rules/BetweenTest.php index e7dee9b..d50199e 100644 --- a/tests/Rules/BetweenTest.php +++ b/tests/Rules/BetweenTest.php @@ -16,6 +16,7 @@ public function testValids() $this->assertTrue($this->rule->fillParameters([6, 10])->check('футбол')); $this->assertTrue($this->rule->fillParameters([2, 3])->check([1,2,3])); $this->assertTrue($this->rule->fillParameters([100, 150])->check(123)); + $this->assertTrue($this->rule->fillParameters([100, 150])->check(123.4)); } public function testInvalids() @@ -24,6 +25,7 @@ public function testInvalids() $this->assertFalse($this->rule->fillParameters([2, 5])->check('футбол')); $this->assertFalse($this->rule->fillParameters([4, 6])->check([1,2,3])); $this->assertFalse($this->rule->fillParameters([50, 100])->check(123)); + $this->assertFalse($this->rule->fillParameters([50, 100])->check(123.4)); } }