Для приличной и стандартизированной функции php я хочу отформатировать введенную пользователем строку в std. формат международного номера телефона.
Строка будет отделена от других символов в виде цифр и знаков +. Все пробелы будут удалены.
После этого я хочу отформатировать различные строки в стандартизированной форме:
+310612345678 -> +31 (0)61 234 5678
00310612345678 -> +31 (0)61 234 5678
+31612345678 -> +31 (0)61 234 5678
//add a leading zero between brackets (0))
0031612345678 -> +31 (0)61 234 5678
06 12345678 -> +31 (0)61 234 5678
//When no country code is given (no 00xx or +xx) than add the dutch one.
Это функция, которая у меня уже есть:
function formatPhoneNumber($num){
//delete everything except digits and +
$number = preg_replace('/[^\d|\+]/', '', $number);
if(substr($number,0,1) == '+' || substr($number, 0,2) == 00){
//
}else{
$number = "+31".$number;
}
/////////
// formatting as mentioned above
/////////
return $num
}
Я ищу алгоритм для форматирования различных способов ввода телефонных номеров в один формат: +31 (0) 61 2345678