#php #laravel #formvalidation-plugin
Вопрос:
Пожалуйста, помогите мне, я новичок в laravel. Я установил проверку формы так, чтобы первые два символа были алфавитными, а последние четыре символа-цифровыми. Пример AB1234
Комментарии:
1. Вам следует создать свое собственное правило, возможно, с помощью регулярного выражения. См.раздел Документы для создания нового правила .
2. /[A-Z]{2}[0-9]{4}/m ..Используйте метод проверки регулярных выражений валидатора Laravel для проверки вашего значения
Ответ №1:
Как говорится в комментариях, вы можете сделать это с помощью регулярного выражения:
$validated = $request->validate([
'some_col' => ['string', 'regex:/^[A-Z]{2}[0-9]{4}$/'],
// other rule
]);
Согласно документам, это правило используется preg_match
, поэтому вы должны следовать тому же форматированию, которое требуется preg_match
. Не забудьте использовать массив для указания правил (как в примере кода).
Ответ №2:
Используйте регулярное выражение в валидаторе,
return Validator::make($data, [
'your_input' => [
'required',
'regex:/^[a-zA-Z]{2}[0-9]{4} $/',
]
]);
вам нужно добавить ^
и $
включить регулярное выражение, чтобы убедиться, что оно соответствует первым 2 и 4 концам
Комментарии:
1. Этот код работает, большое вам спасибо.
2. всегда пожалуйста 🙂