<?php
//Правильные
$numbers = [ 
   "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", '92346234636',  /*Неправильные*/
  '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' /* нет + */
];
for ($i = 0; $i < count($numbers); $i++) { 
	$number = $numbers[$i];
	$space = str_replace(" ","",$number);	/*Убираю пробелы*/
	$bracketStart = str_replace("(", "",$space);	/*Убираю скобки*/
	$bracketClose = str_replace(")", "",$bracketStart);
	$hyphen = str_replace("-", "",$bracketClose);	/*Убираю дефис*/
	$regexp = "/^8[0-9]{10}$/";		/*Проверка на 8-ку*/
	$regexp2 = "/^[+]7[0-9]{10}$/";	/*Проверка на +7*/
	$match = array();
	if (preg_match($regexp,$hyphen,$match)) {	/*8-ки*/
	echo "Номер соответствует формату\n";
	} elseif (preg_match($regexp2,$hyphen,$match)) {	/*7-ки*/
	echo "Номер соответствует формату\n";
	} else {										/*Неформат*/
		echo "$hyphen\n";
		echo "Номер не соответствует формату\n";
	}
}
?>