- <?php 
-   
- 	function verificationPhone($pattern, $telephoneNumber){ 
- 		foreach($telephoneNumber as $value){ 
- 				echo "{$value}\t-\tOK\n"; 
- 			}else{ 
- 				echo "{$value}\t-\tERROR\n"; 
- 			} 
- 		} 
- 	} 
-   
- 	// Правильные:  
- 	  '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 = array( 
- 	  '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' /* нет + */ 
- 	); 
-   
- 	$pattern = "/^((\s*8\s*)|(\s*\+\s*7\s*))[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d[\s-\(\) ]*\d$/u"; 
-   
- 	verificationPhone($pattern, $correctNumbers); 
- 	echo "\n\n"; 
- 	verificationPhone($pattern, $incorrectNumbers); 
- ?> 
				PD9waHAKCWVycm9yX3JlcG9ydGluZygtMSk7CgltYl9pbnRlcm5hbF9lbmNvZGluZygndXRmLTgnKTsKCQoJZnVuY3Rpb24gdmVyaWZpY2F0aW9uUGhvbmUoJHBhdHRlcm4sICR0ZWxlcGhvbmVOdW1iZXIpewoJCWZvcmVhY2goJHRlbGVwaG9uZU51bWJlciBhcyAkdmFsdWUpewoJCQlpZihwcmVnX21hdGNoKCRwYXR0ZXJuLCAkdmFsdWUpID09PSAxKSB7CgkJCQllY2hvICJ7JHZhbHVlfVx0LVx0T0tcbiI7CgkJCX1lbHNlewoJCQkJZWNobyAieyR2YWx1ZX1cdC1cdEVSUk9SXG4iOwoJCQl9CgkJfQoJfQoJCgkvLyDQn9GA0LDQstC40LvRjNC90YvQtTogCgkkY29ycmVjdE51bWJlcnMgPSBhcnJheSgKCSAgJzg0OTUxMjM0NTY3JywgICcrNzQ5NTEyMzQ1NjcnLCAnOC00OTUtMS0yMzQtNTY3JywgCgkgICcgOCAoODEyMikgNTYtNTYtNTYnLCAnOC05MTEtMTIzNDU2NycsICc4ICg5MTEpIDEyIDM0NSA2NycsIAoJICAnOC05MTEgMTIgMzQ1IDY3JywgJzggKDkxMSkgLSAxMjMgLSA0NSAtIDY3JywgJysgNyA5OTkgMTIzIDQ1NjcnLCAKCSAgJzggKCA5OTkgKSAxMjM0NTY3JywgJzggOTk5IDEyMyA0NTY3JwoJKTsKCgkvLyDQndC10L/RgNCw0LLQuNC70YzQvdGL0LU6IAoJJGluY29ycmVjdE51bWJlcnMgPSBhcnJheSgKCSAgJzAyJywgJzg0OTUxMjM0NTY3INC/0L7Qt9Cy0LDRgtGMINC70Y7RgdGOJywgJzg0OTUxMjM0NScsICc4NDk1MTIzNDU2NzgnLCAKCSAgJzggKDQwOSkgMTIzLTEyMy0xMjMnLCAnNzkwMDEyMzQ2NycsICc1MDA1MDA1MDAxJywgJzg4ODgtODg4OC04OCcsCgkgICc4NDk1MWEyMzQ1NjcnLCAnODQ5NTEyMzQ1NmEnLCAKCSAgJysxIDIzNCA1Njc4OTAxJywgLyog0L3QtdCy0LXRgNC90YvQuSDQutC+0LQg0YHRgtGA0LDQvdGLICovCgkgICcrOCAyMzQgNTY3ODkwMScsIC8qINC70LjQsdC+IDgg0LvQuNCx0L4gKzcgKi8KCSAgJzcgMjM0IDU2Nzg5MDEnIC8qINC90LXRgiArICovCgkpOwoKCSRwYXR0ZXJuID0gIi9eKChccyo4XHMqKXwoXHMqXCtccyo3XHMqKSlbXHMtXChcKSBdKlxkW1xzLVwoXCkgXSpcZFtccy1cKFwpIF0qXGRbXHMtXChcKSBdKlxkW1xzLVwoXCkgXSpcZFtccy1cKFwpIF0qXGRbXHMtXChcKSBdKlxkW1xzLVwoXCkgXSpcZFtccy1cKFwpIF0qXGRbXHMtXChcKSBdKlxkJC91IjsKCQoJdmVyaWZpY2F0aW9uUGhvbmUoJHBhdHRlcm4sICRjb3JyZWN0TnVtYmVycyk7CgllY2hvICJcblxuIjsKCXZlcmlmaWNhdGlvblBob25lKCRwYXR0ZXJuLCAkaW5jb3JyZWN0TnVtYmVycyk7Cj8+