in та not_in - whitelist/blacklist валідація
Поле має бути одним із дозволених значень?
in — whitelist, not_in — blacklist.
Коли корисно:
- Статуси, ролі
- Передвизначені опції
- Перевірка значень з конфігів/БД
Кращий варіант:
PHP 8.1 Enum + enum rule.
Порада: Rule::in() зручно для динамічних масивів.
use Illuminate\Validation\Rule;
public function rules()
{
$roles = ['user', 'admin', 'moderator'];
return [
'status' => 'required|in:pending,approved,rejected',
'role' => ['required', Rule::in($roles)],
'username' => [
'required',
Rule::notIn(['admin', 'root', 'system']),
],
];
}