Как проверить номер телефона в laravel? - PullRequest
1 голос
/ 23 февраля 2020

Я хочу проверить поле телефонного номера и разрешить только те номера, которые начинаются со следующих цифр 77, 71, 73.

Как я могу реализовать это в созданном мной запросе?

public function rules()
    {
        return [
            'name'=>'required',
            'password'=>'required|min:6',
            'phone'=>'required|digits:9',
        ];
    }

Ответы [ 3 ]

1 голос
/ 23 февраля 2020

Вы можете использовать регулярные выражения для проверки номера телефона, например:

'phone' => 'required|regex:/(01)[0-9]{9}/'

. Это позволит проверить, что ввод начинается с 01 и сопровождается 9 числами. При использовании регулярных выражений вам не нужны числовые c или правила проверки размера.

1 голос
/ 23 февраля 2020

Одним из возможных решений было бы использование регулярных выражений.

 'phone' => ['required', 'regex:/^((71)|(73)|(77))[0-9]{7}/']
  1. Я предполагаю, что ваш номер телефона имеет 9 цифр, поэтому я использовал {7} // (71 | 73 | 77) 2 цифры + 7 цифры = 9 цифр
  2. Обратите внимание, что если вы хотите использовать ИЛИ, вы должны использовать массив вместо разделения правил с помощью |
1 голос
/ 23 февраля 2020

Вы должны просто найти здесь регулярное выражение, например,

var numbers = [771234567, 128675309];
console.log(/^(?:71|73|77)\d{7}$/.test(numbers[0]));
console.log(/^(?:71|73|77)\d{7}$/.test(numbers[1]));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...