<?php
/*На вход скрипта дан введенный пользователем номер телефона в виде 8-911-404-44-11
или +7(812)6786767 (в начале 8 или +7, потом идут 10 цифр и, возможно, какие-то символы).
То есть, как и в прошлой задаче, человек вводит номер как хочет. Надо проверить номер
на правильность и привести любой номер к единому формату 89114044411
(то есть, заменить +7 на 8 и выкинуть весь мусор вроде пробелов, скобок и минусов, кроме цифр)
*/
$input = '77 (951) 46-47-425';
$regexp = "/^[8\\+7]{1,2}[\\s(-]*\\d{3}[\\s)(-]*(\\d[-)(\\s]?){7}$/"; /* проверяем правильность номера */
echo "good.\n";
}
else {
echo "invalid phone number.\n";
}
$phoneNumber = preg_replace('/\\A\\+\\s?7/', '8', $input); /*сначала заменяем +7 на 8 */
$phoneNumber = preg_replace('/[^\\d]/', '', $phoneNumber); /*а затем удаляем все символы отличные от [0-9] */
?>
PD9waHAKZXJyb3JfcmVwb3J0aW5nKC0xKTsKbWJfaW50ZXJuYWxfZW5jb2RpbmcoJ3V0Zi04Jyk7Ci8q0J3QsCDQstGF0L7QtCDRgdC60YDQuNC/0YLQsCDQtNCw0L0g0LLQstC10LTQtdC90L3Ri9C5INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC8INC90L7QvNC10YAg0YLQtdC70LXRhNC+0L3QsCDQsiDQstC40LTQtSA4LTkxMS00MDQtNDQtMTEgCtC40LvQuCArNyg4MTIpNjc4Njc2NyAo0LIg0L3QsNGH0LDQu9C1IDgg0LjQu9C4ICs3LCDQv9C+0YLQvtC8INC40LTRg9GCIDEwINGG0LjRhNGAINC4LCDQstC+0LfQvNC+0LbQvdC+LCDQutCw0LrQuNC1LdGC0L4g0YHQuNC80LLQvtC70YspLiAK0KLQviDQtdGB0YLRjCwg0LrQsNC6INC4INCyINC/0YDQvtGI0LvQvtC5INC30LDQtNCw0YfQtSwg0YfQtdC70L7QstC10Log0LLQstC+0LTQuNGCINC90L7QvNC10YAg0LrQsNC6INGF0L7Rh9C10YIuINCd0LDQtNC+INC/0YDQvtCy0LXRgNC40YLRjCDQvdC+0LzQtdGAIArQvdCwINC/0YDQsNCy0LjQu9GM0L3QvtGB0YLRjCDQuCDQv9GA0LjQstC10YHRgtC4INC70Y7QsdC+0Lkg0L3QvtC80LXRgCDQuiDQtdC00LjQvdC+0LzRgyDRhNC+0YDQvNCw0YLRgyA4OTExNDA0NDQxMSAKKNGC0L4g0LXRgdGC0YwsINC30LDQvNC10L3QuNGC0YwgKzcg0L3QsCA4INC4INCy0YvQutC40L3Rg9GC0Ywg0LLQtdGB0Ywg0LzRg9GB0L7RgCDQstGA0L7QtNC1INC/0YDQvtCx0LXQu9C+0LIsINGB0LrQvtCx0L7QuiDQuCDQvNC40L3Rg9GB0L7Qsiwg0LrRgNC+0LzQtSDRhtC40YTRgCkKKi8KCiRpbnB1dCA9ICc3NyAoOTUxKSA0Ni00Ny00MjUnOwoKJHJlZ2V4cCA9ICIvXls4XFwrN117MSwyfVtcXHMoLV0qXFxkezN9W1xccykoLV0qKFxcZFstKShcXHNdPyl7N30kLyI7IC8qINC/0YDQvtCy0LXRgNGP0LXQvCDQv9GA0LDQstC40LvRjNC90L7RgdGC0Ywg0L3QvtC80LXRgNCwICovCgppZiAocHJlZ19tYXRjaCgkcmVnZXhwLCAkaW5wdXQpKSB7CgllY2hvICJnb29kLlxuIjsKfQplbHNlIHsKCWVjaG8gImludmFsaWQgcGhvbmUgbnVtYmVyLlxuIjsKCWV4aXQ7Cn0KCiRwaG9uZU51bWJlciA9IHByZWdfcmVwbGFjZSgnL1xcQVxcK1xccz83LycsICc4JywgJGlucHV0KTsgLyrRgdC90LDRh9Cw0LvQsCDQt9Cw0LzQtdC90Y/QtdC8ICs3INC90LAgOCAqLwoKJHBob25lTnVtYmVyID0gcHJlZ19yZXBsYWNlKCcvW15cXGRdLycsICcnLCAkcGhvbmVOdW1iZXIpOyAvKtCwINC30LDRgtC10Lwg0YPQtNCw0LvRj9C10Lwg0LLRgdC1INGB0LjQvNCy0L7Qu9GLINC+0YLQu9C40YfQvdGL0LUg0L7RgiBbMC05XSAqLwoKdmFyX2R1bXAoJHBob25lTnVtYmVyKTsKCj8+Cg==