<?php
$regExp = "/^\\s*([+]\\s*7|8)(\W*[0-9]\W*){10}$/ui"; //регулярка для правильного номера (пока не нужна)

$deleteExp = "/\\W*/"; //регулярка для удаления лишних символов

$standartExp = "/((7)|(8))([0-9]{10})/ui"; // Устанавливает номерам единный стандарт

$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'
];
// Проверяем номер на правильность и заносим правильный номер в массив
foreach($correctNumbers as $correctNumber){
	if(preg_match($regExp,$correctNumber)){
		$provedNumbers[] = $correctNumber;
	}
}

// Убираем лишние символы и заносим исправленные номера в массив
foreach($provedNumbers as $provedNumber){
	$cleanNumbers[] = preg_replace($deleteExp,"", $provedNumber);
}


// Делаем единный стандарт
foreach($cleanNumbers as $cleanNumber){
	 $numbers[] = preg_replace($standartExp,"+7$4", $cleanNumber);

}

print_r($numbers); //Ура!!!!