AutorÃa | Ultima modificación | Ver Log |
<?php
declare(strict_types=1);
namespace LeadersLinked\Validator;
use Laminas\Validator\AbstractValidator;
use Laminas\Validator\GreaterThan;
use Laminas\Stdlib\ArrayUtils;
use Traversable;
class GreaterThanOtherField extends GreaterThan
{
/**
*
* @var string
*/
protected $token;
/**
*
* @var bool
*/
protected $inclusive;
public function __construct($options = null)
{
if (! array_key_exists('token', $options)) {
throw new \InvalidArgumentException("Missing option 'token'");
}
$this->token = $options['token'];
$options = [
'min' => 0,
'inclusive' => false,
];
parent::__construct($options);
}
public function isValid($value, $context = null)
{
$min = isset($context[$this->token]) ? $context[$this->token] : 0;
$this->setMin($min);
return parent::isValid($value);
}
}