public function validate($value)
{
if (!$value) {
return true;
}
switch ($this->type) {
case 'url':
return filter_var($value, FILTER_VALIDATE_URL);
case 'email':
return filter_var($value, FILTER_VALIDATE_EMAIL);
case 'number':
return is_numeric($value);
case 'integer':
return is_int($value);
case 'digits':
return preg_match('/^[0-9]*$/', $value);
case 'alphanum':
return ctype_alnum($value);
}
}