Активный
- Тема Автор
- #1
Валидация защищает от некорректных данных. Разберем методы валидации.
Валидация email
Валидация URL
Валидация чисел
Валидация строк
Класс валидации
Важные моменты:
- Валидируйте все пользовательские данные
- Используйте фильтры PHP
- Проверяйте на сервере и клиенте
- Предоставляйте понятные сообщения об ошибках
Валидация защищает от некорректных данных!
Валидация email
Код:
<?php
function validateEmail($email) {
return filter_var($email, FILTER_VALIDATE_EMAIL) !== false;
}
$email = "user@example.com";
if(validateEmail($email)) {
echo "Валидный email";
}
?>
Валидация URL
Код:
<?php
function validateURL($url) {
return filter_var($url, FILTER_VALIDATE_URL) !== false;
}
?>
Валидация чисел
Код:
<?php
function validateInteger($value, $min = null, $max = null) {
if(!is_numeric($value)) {
return false;
}
$int = (int)$value;
if($min !== null && $int < $min) {
return false;
}
if($max !== null && $int > $max) {
return false;
}
return true;
}
?>
Валидация строк
Код:
<?php
function validateString($string, $minLength = 0, $maxLength = null) {
$length = strlen($string);
if($length < $minLength) {
return false;
}
if($maxLength !== null && $length > $maxLength) {
return false;
}
return true;
}
?>
Класс валидации
Код:
<?php
class Validator {
public static function email($email) {
return filter_var($email, FILTER_VALIDATE_EMAIL) !== false;
}
public static function required($value) {
return !empty($value);
}
public static function minLength($string, $min) {
return strlen($string) >= $min;
}
public static function maxLength($string, $max) {
return strlen($string) <= $max;
}
}
// Использование
if(Validator::email($email) && Validator::required($email)) {
// валидация прошла
}
?>
Важные моменты:
- Валидируйте все пользовательские данные
- Используйте фильтры PHP
- Проверяйте на сервере и клиенте
- Предоставляйте понятные сообщения об ошибках
Валидация защищает от некорректных данных!