Проверка любого номера телефона в php

Пожалуйста, мне нужна помощь для проверки телефонных номеров в различных форматах

Допустимые форматы:

+111 1 11111111
+11 1111111
1111111
(+111) (11) 1111111

И т.д., формат:

  • Вы можете взять знак "+" только в начале и один раз. Может привести
  • Открытые и закрытые скобки только начало. Вы не можете иметь больше
  • чем 15 номеров в общей сложности. Всего не может быть меньше 8 номеров.

Есть это:

if(strlen($buff) < 8)
    return false;

$buff = trim(preg_replace('/\s+/', ' ', $buff));

if(preg_match('/^\(\d\) \d \d$/', $buff))
    return $buff;

return false;

Благодарю.

1 ответ

Тактика смартфонов:

  1. удалить все нечисловые символы, но не +
  2. заменить первый знак на 00 если это +
  3. заменить ведущий 000 от 00
  4. сопоставить возможный код страны
  5. проверить длину между x а также y

Вам даже не нужно регулярное выражение для этого.

Другие вопросы по тегам