У меня есть поле, в котором пользователь может искать базу данных MySQL для электронной почты, телефона и имени пользователя. Все номера в базе данных - 10-значный (1231231234) формат.
IF (большой, если есть), пользователь вводит номер телефона в следующем формате. Я хочу, чтобы он был дезинфицирован только в 10-значной строке, поскольку он коррелирует в базе данных:
(123)123-1234
123-123-1234
123.123.1234
+1(123)123-1234
11231231234
Доступны имена пользователей и электронные письма. и - символы. Поэтому я не знаю, как использовать PHP, чтобы определить, находится ли он в одном из этих форматов, а затем дезинформировать его соответствующим образом. Идеи?
libphonenumber может правильно переформатировать телефонные номера в общий формат, добавив, где это необходимо, международные коды, а затем он может быть сохранен в базе данных как простая строка с возможностью поиска.
Это позволит удалить все, что вам нужно, удалить из телефонных номеров или любого другого значения. Просто обновите массив, если вам нужно удалить другие вещи.
$string = str_replace(array('-',' ','.','(',')',',','"','+'),'',$string);