<?php
/*
Дан текст, который по идее должен быть номером телефона 
в виде 8-(911)-506 56 56 (т.е. человек может ввести не 
только цифры, но и скобки, минусы, может что-то еще). 
Но в реальности, пользователь может вместо номера 
написать что угодно. Напиши скрипт для проверки 
правильности введенного номера («8(911)-506 56 56» — 
правильный номер, «8-911-50-656-56» — правильный, 
«89115065656» — праивльный, «02» — неправильный, 
«89115065656 позвать Люду» — неправильный).
*/

error_reporting(-1);
function CheckPhone($Phone){

	$text=$Phone;
	$regexp='/^8-*([(]{1})*([0-9]{3})-*([)]{1})*([0-9]{2})-*([0-9]{3})-*([0-9]{2})-*$/';
	$matches=array();
	if(preg_match($regexp, $text, $matches)){
		echo "{$text} Всё верно. \n";
		echo "<br>";
	//	var_dump($matches);
		echo "<br>";
	}else{
		echo "{$text}  Пожалуйста укажите номер в формате 89xxxxxxxxx\n";
		echo "<br>";
	}
}

function CheckMinus($Phone){

	$text=$Phone;
	$regexp='/^---$/';
	$matches=array();
	if(preg_match($regexp, $text, $matches)){
		echo "{$text} Всё верно. \n";
		echo "<br>";
	//	var_dump($matches);
		echo "<br>";
	}else{
		echo "{$text}  Пожалуйста укажите номер в формате 89xxxxxxxxx\n";
		echo "<br>";
	}
}
function CheckScobka($Phone){

	$text=$Phone;
	$regexp='/^8-*\\(*([0-9]{3})\\)*-*([0-9]{3})-*\\s*([0-9]{2})*\\s*([0-9]{2})*$/';
	$matches=array();
	if(preg_match($regexp, $text, $matches)){
		echo "{$text} Всё верно. \n";
		echo "<br>";
		//var_dump($matches);
		echo "<br>";
	}else{
		echo "{$text}  Пожалуйста укажите номер в формате 89xxxxxxxxx\n";
		echo "<br>";
	}
}
$Ch1=CheckPhone("8(911)-506 56 56");
$Ch2=CheckPhone("8-911-50-656-56");
$Ch3=CheckPhone("02");
$Ch4=CheckPhone("89115065656 позвать Люду");
$Ch5=CheckPhone("89114001234");
$Ch6=CheckPhone("8(911)506 56 56");
echo "Тут уже вне задачи.";
		echo "<br>";
//$Ch7=CheckMinus("---");
$Ch7=CheckScobka("8(123)-123");
$Ch8=CheckScobka("8(123)123");
$Ch9=CheckScobka("8(911)-506 11 11");

?>