@povisok_dmitriy

Как привести формат тел-на +7 (xxx) xxx-xxxx к 7xxxxxxxxxx в php?

Для интеграции с смс рассылкой потребовалось привести формат вывода телефона к такому виду 7xxxxxxxxxx. А в базе все тел-ны хранятся в +7 (xxx) xxx-xxxx как привести к требуемому виду? Другими словами требуется уничтожить маску телефона и привести телефон чисто к числовому виду, без пробелов, без лишних знаков. Help me!
  • Вопрос задан
  • 5785 просмотров
Решения вопроса 1
mashletov
@mashletov
Math.random()
$phone = preg_replace('/\D/', '', $phone);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Wolfnsex
@Wolfnsex Куратор тега PHP
Если не хочешь быть первым - не вставай в очередь!
А в базе все тел-ны хранятся в +7 (xxx) xxx-xxxx как привести к требуемому виду? Help me!
Можно в т.ч. и прямо в базе поменять, с помощью запроса (смотря какая БД, но думаю, что многие поддерживают регулярные выражения). В том числе можно попробовать выбирать из базы поле и изменять его прямо в запросе.

В PHP соотв. preg_replace + регулярка типа такой: [^\d]
Ответ написан
Комментировать
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
Свое решение тоже приведу :)
$phone = filter_var(str_replace(['+', '-'], [],'+7(999)912-23-34'), FILTER_SANITIZE_NUMBER_INT);


Шутка, конечно. возьмите другое.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы