// Возвращает FALSE, если элемент формы пуст.
public function required($str)
{
if ( ! is_array($str))
{
return (trim($str) == '') ? FALSE : TRUE;
}
else
{
return ( ! empty($str));
}
}
// Возрвращает FALSE, если длина меньше, чем указано в параметре.
public function min_length($str, $val)
{
if (preg_match("/[^0-9]/", $val))
{
return FALSE;
}
if (function_exists('mb_strlen'))
{
return (mb_strlen($str) < $val) ? FALSE : TRUE;
}
return (strlen($str) < $val) ? FALSE : TRUE;
}
// Возрвращает FALSE, если длина больше, чем указано в параметре.
public function max_length($str, $val)
{
if (preg_match("/[^0-9]/", $val))
{
return FALSE;
}
if (function_exists('mb_strlen'))
{
return (mb_strlen($str) > $val) ? FALSE : TRUE;
}
return (strlen($str) > $val) ? FALSE : TRUE;
}
// Возвращае FALSE, если длина не соответствует указанной.
public function exact_length($str, $val)
{
if (preg_match("/[^0-9]/", $val))
{
return FALSE;
}
if (function_exists('mb_strlen'))
{
return (mb_strlen($str) != $val) ? FALSE : TRUE;
}
return (strlen($str) != $val) ? FALSE : TRUE;
}
// Возвращает FALSE, если содержимое элемента формы меньше указанного или не является числовым значением.
public function greater_than($str, $min)
{
if ( ! is_numeric($str))
{
return FALSE;
}
return $str > $min;
}
// Возвращает FALSE, если содержимое элемента формы больше чем указано, или не является числовым значением.
public function less_than($str, $max)
{
if ( ! is_numeric($str))
{
return FALSE;
}
return $str < $max;
}
// Возвращает FALSE, если содержимое элемента формы содержит что-то кроме алфавитных символов.
public function alpha($str)
{
return ( ! preg_match("/^([a-z])+$/i", $str)) ? FALSE : TRUE;
}
// Возвращает FALSE, если содержимое элемента формы содержит что-то кроме алфавитно-числовых символов.
public function alpha_numeric($str)
{
return ( ! preg_match("/^([a-z0-9])+$/i", $str)) ? FALSE : TRUE;
}
// Возвращает FALSE, если содержимое элемента формы содержит что-то кроме алфавитно-числовых символов, символов подчеркивания или дефисов.
public function alpha_dash($str)
{
return ( ! preg_match("/^([-a-z0-9_-])+$/i", $str)) ? FALSE : TRUE;
}
// Возвращает FALSE, если содержимое элемента формы не является числовым значением.
public function numeric($str)
{
return (bool)preg_match( '/^[-+]?[0-9]*.?[0-9]+$/', $str);
}
// Возвращает FALSE, если содержимое элемента формы содержит что-то кроме целого числа.
public function integer($str)
{
return (bool) preg_match('/^[-+]?[0-9]+$/', $str);
}
// Возвращает FALSE, если содержимое элемента формы не является десятичным числом.
public function decimal($str)
{
return (bool) preg_match('/^[-+]?[0-9]+.[0-9]+$/', $str);
}
// Возвращает FALSE, если содержимое элемента формы содержит что-то кроме натуральных чисел: 0, 1, 2, 3 и так далее.
public function is_natural($str)
{
return (bool) preg_match( '/^[0-9]+$/', $str);
}
// Возвращает FALSE, если содержимое элемента формы содержит что-то кроме натуральных чисел, кроме ноля: 1, 2, 3 и так далее
public function is_natural_no_zero($str)
{
if ( ! preg_match( '/^[0-9]+$/', $str))
{
return FALSE;
}
if ($str == 0)
{
return FALSE;
}
return TRUE;
}
// Возвращает FALSE, если элемент формы не содержит корректный адрес электронной почты.
public function valid_email($str)
{
return ( ! preg_match("/^([a-z0-9+_-]+)(.[a-z0-9+_-]+)*@([a-z0-9-]+.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
}
// Фильтрация строк
public function doc($str)
{
$CI =& get_instance();
// Пропускает данные через фильтр XSS.
$str = $CI->security->xss_clean($str);
// Обрезает теги HTML от изображений, оставляя только URL.
$str = preg_replace("#<imgs+.*?srcs*=s*["'](.+?)["'].*?>#", "1", $str);
$str = preg_replace("#<imgs+.*?srcs*=s*(.+?).*?>#", "1", $str);