<?php
$regexp = "/^(\\ +7|8)[0-9]{10}$/ui" ;
$allNumbers = [
$correctNumbers = [ '84951234567' , '+74951234567' , '8-495-1-234-567' ,
' 8 (8122) 56-56-56' , '8-911-1234567' , '8 (911) 12 345 67' ,
'8-911 12 345 67' , '8 (911) - 123 - 45 - 67' , '+ 7 999 123 4567' ,
'8 ( 999 ) 1234567' , '8 999 123 4567' ] ,
$incorrectNumbers = [ '02' , '84951234567 позвать люсю' , '849512345' , '849512345678' ,
'8 (409) 123-123-123' , '7900123467' , '5005005001' , '8888-8888-88' ,
'84951a234567' , '8495123456a' ,
'+1 234 5678901' , /* неверный код страны */
'+8 234 5678901' , /* либо 8 либо +7 */
'7 234 5678901' /* нет + */ ]
] ;
$matches = [ ] ;
foreach ( $allNumbers as $numbers ) {
foreach ( $numbers as $number ) {
if ( preg_match ( $regexp , $correctText , $matches ) ) { echo "Правильный номер: {$matches[0]} <br/>" ;
} else {
echo "Ошибка! Введите номер формата: +7/8xxxxxxxxxx<br/>" ;
}
}
}
?>
PD9waHAKbWJfaW50ZXJuYWxfZW5jb2RpbmcoInV0Zi04Iik7CiRyZWdleHAgPSAiL14oXFwrN3w4KVswLTldezEwfSQvdWkiOwokYWxsTnVtYmVycyA9IFsKICAgICAgICAkY29ycmVjdE51bWJlcnMgPSBbICAgICc4NDk1MTIzNDU2NycsICAnKzc0OTUxMjM0NTY3JywgJzgtNDk1LTEtMjM0LTU2NycsCiAgICAnIDggKDgxMjIpIDU2LTU2LTU2JywgJzgtOTExLTEyMzQ1NjcnLCAnOCAoOTExKSAxMiAzNDUgNjcnLAogICAgJzgtOTExIDEyIDM0NSA2NycsICc4ICg5MTEpIC0gMTIzIC0gNDUgLSA2NycsICcrIDcgOTk5IDEyMyA0NTY3JywKICAgICc4ICggOTk5ICkgMTIzNDU2NycsICc4IDk5OSAxMjMgNDU2NycgXSwKICAgICAgICAkaW5jb3JyZWN0TnVtYmVycyA9IFsgICAnMDInLCAnODQ5NTEyMzQ1Njcg0L/QvtC30LLQsNGC0Ywg0LvRjtGB0Y4nLCAnODQ5NTEyMzQ1JywgJzg0OTUxMjM0NTY3OCcsCiAgICAgICAgICAgICc4ICg0MDkpIDEyMy0xMjMtMTIzJywgJzc5MDAxMjM0NjcnLCAnNTAwNTAwNTAwMScsICc4ODg4LTg4ODgtODgnLAogICAgICAgICAgICAnODQ5NTFhMjM0NTY3JywgJzg0OTUxMjM0NTZhJywKICAgICAgICAgICAgJysxIDIzNCA1Njc4OTAxJywgLyog0L3QtdCy0LXRgNC90YvQuSDQutC+0LQg0YHRgtGA0LDQvdGLICovCiAgICAgICAgICAgICcrOCAyMzQgNTY3ODkwMScsIC8qINC70LjQsdC+IDgg0LvQuNCx0L4gKzcgKi8KICAgICAgICAgICAgJzcgMjM0IDU2Nzg5MDEnIC8qINC90LXRgiArICovXQpdOwokbWF0Y2hlcyA9IFtdOwpmb3JlYWNoICgkYWxsTnVtYmVycyBhcyAkbnVtYmVycykgewogICAgZm9yZWFjaCAoJG51bWJlcnMgYXMgJG51bWJlcikgewogICAgICAgICRjb3JyZWN0VGV4dCA9IHN0cl9yZXBsYWNlKCIgIiwgIiIsICRudW1iZXIpOwogICAgICAgICRjb3JyZWN0VGV4dCA9IHN0cl9yZXBsYWNlKCItIiwgIiIsICRjb3JyZWN0VGV4dCk7CiAgICAgICAgJGNvcnJlY3RUZXh0ID0gc3RyX3JlcGxhY2UoIigiLCAiIiwgJGNvcnJlY3RUZXh0KTsKICAgICAgICAkY29ycmVjdFRleHQgPSBzdHJfcmVwbGFjZSgiKSIsICIiLCAkY29ycmVjdFRleHQpOwogICAgICAgIGlmIChwcmVnX21hdGNoKCRyZWdleHAsICRjb3JyZWN0VGV4dCwgJG1hdGNoZXMpKSB7CiAgICAgICAgICAgIGVjaG8gItCf0YDQsNCy0LjQu9GM0L3Ri9C5INC90L7QvNC10YA6IHskbWF0Y2hlc1swXX08YnIvPiI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZWNobyAi0J7RiNC40LHQutCwISDQktCy0LXQtNC40YLQtSDQvdC+0LzQtdGAINGE0L7RgNC80LDRgtCwOiArNy84eHh4eHh4eHh4eDxici8+IjsKICAgICAgICB9CiAgICB9Cn0KICAgID8+