for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace InputGuard\Guards\Bases;
trait FloatBase
{
/**
* @var float
*/
private $min = PHP_FLOAT_MIN;
private $max = PHP_FLOAT_MAX;
public function between(float $min, float $max): self
$this->min = $min;
$this->max = $max;
return $this;
}
public function min(float $min): self
public function max(float $max): self
protected function validation($input, &$value): bool
if (\is_bool($input)) {
return false;
$return = filter_var($input, FILTER_VALIDATE_FLOAT);
if ($return === false) {
if ($return < $this->min || $return > $this->max) {
$value = $return;
return true;