Метод 1: правило «не»
Самый простой способ выполнить проверку «не равно» в Laravel — использовать правило «не». Это правило отменяет сравнение входного значения с указанным значением. Вот пример:
$request->validate([
'age' => 'not:18',
]);
В этом случае поле «возраст» не должно быть равно 18, чтобы проверка прошла успешно.
Метод 2: «разное» правило
Другой метод — использовать «разное» правило. Это правило проверяет, отличается ли входное значение от указанного значения. Взгляните на следующий пример:
$request->validate([
'color' => 'different:red',
]);
Здесь поле «цвет» не должно быть равно «красному», чтобы пройти проверку.
Метод 3: пользовательское правило проверки
Если вам нужны более сложные проверки «не равно», вы можете создать собственное правило проверки. Это позволяет вам определить собственную логику определения неравенства. Вот пример специального правила:
Validator::extend('not_equal', function ($attribute, $value, $parameters, $validator) {
return $value !== $parameters[0];
});
$request->validate([
'username' => 'not_equal:admin',
]);
В этом случае поле «имя пользователя» не должно быть равно «admin», чтобы проверка прошла успешно.
Метод 4: Условная проверка
Иногда вам может потребоваться условно применить проверку «не равно». Laravel предоставляет правила «required_if» и «required_unless» для таких сценариев. Вот пример:
$request->validate([
'email' => 'required_if:role,admin',
]);
В этом примере поле «электронная почта» является обязательным, только если поле «роль» равно «администратор».
В этой статье мы рассмотрели несколько методов выполнения проверки «не равенства» в Laravel. Мы рассмотрели правило «не», правило «другое», создание пользовательских правил проверки и условные проверки с использованием «required_if» и «required_unless». Используя эти методы, вы можете гарантировать, что пользовательский ввод соответствует вашим конкретным требованиям. Приятного кодирования!