FEATURE Handling French mobile numbers

This commit is contained in:
Nonimart 2025-07-10 17:25:58 +02:00
parent e623673590
commit 6ceaa2b9fb

View File

@ -310,11 +310,13 @@ function format_phone_number($phoneNumber)
$cleanedNumber = preg_replace('/\D+/', '', $phoneNumber);
$phoneType = detectBelgianPhoneType($cleanedNumber);
if ($phoneType === 'mobile') {
$formattedPhoneNumber = preg_replace('/(\d{2})(\d{3})(\d{2})(\d{2})(\d{2})/', '+$1$2$3$4$5', $cleanedNumber);
} else if ($phoneType === 'landline') {
$formattedPhoneNumber = preg_replace('/(\d{2})(\d{1})(\d{3})(\d{2})(\d{2})/', '+$1$2$3$4$5', $cleanedNumber);
} else if ($phoneType === 'fr_mobile') {
$formattedPhoneNumber = preg_replace('/(\d{2})(\d{1})(\d{2})(\d{2})(\d{2})(\d{2})/', '+$1$2$3$4$5$6', $cleanedNumber);
} else {
$formattedPhoneNumber = $cleanedNumber;
}
@ -334,5 +336,9 @@ function detectBelgianPhoneType($number)
return 'landline';
}
if (preg_match('/^33[0-9]{9}$/', $number)) {
return 'fr_mobile';
}
return 'unknown';
}