filter_var
— Фильтрует переменную с помощью определенного фильтра.
Работает только в PHP версии 5.2.0 и выше.
filter_var(variable, filter, options);
- variable - переменная, которую необходимо проверить
- filter - id фильтра. Фильтры можно посмотреть здесь.
- options - (не обязательный параметр) Ассоциативный массив параметров либо логическая дизъюнкция (операция ИЛИ) флагов.
Функция возвращает отфильтрованные данные или FALSE, если фильтрация завершилась неудачей.
Примеры использования
Валидация email:
$user_mail = '[email protected]';
$result = filter_var($user_mail, FILTER_VALIDATE_EMAIL)
print $result ? 'email введён верно' : 'Вы ввели неверный email';
Фильтрация email адреса
$filtred_email = filter_var('[email protected]', FILTER_SANITIZE_EMAIL);
Валидация по регулярному выражению
$user_phone = '+7 (999) 999-99-99'; // Номер телефона
// регулярка проверки номера телефона
$reg_exp = '/\+7\s\(\d{3}\)\s\d{3}\-\d{2}-\d{2}\b/';
$result = filter_var($user_phone, FILTER_VALIDATE_REGEXP, array(
'options' => array(
'regexp' => $reg_exp,
),
));
if ( ! $result)
{
print 'Номер телефона введён неверно';
} else {
print 'Номер телефона введён верно';
}
// => Выведет "Номер телефона введён верно"