You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 lines
824 B

<?php
/**
* @copyright NetMonsters <team@netmonsters.ru>
* @link http://netmonsters.ru
* @package Majestic
* @subpackage forms
* @since 17.05.12
* @author Aleksander Demidov
*
*/
class StrlenValidator extends \Majestic\Validator
{
const GREATHER_THAN = 'not_match';
protected $templates = array(self::GREATHER_THAN => 'String length greather than.');
protected $token;
public function __construct($token)
{
$this->token = $token;
}
public function isValid($value, $context = null)
{
$this->setValue($value);
if ($this->token === null) {
throw new InitializationException('Token not defined.');
}
if (strlen($value) > $this->token) {
$this->error();
return false;
}
return true;
}
}