- preg_match: documentation ( source)
- preg_replace: documentation ( source)
<?php
$telefones = ['(11) 5550 - 5550', '(11) 96660 - 6660', '(11) 90000 - 0000'];
foreach ($telefones as $telefone){
$regex = '/^\(([0-9]{2})\) (9?[0-9]{4} - [0-9]{4})$/';
$telefoneValido = preg_match
( $regex,
$telefone
);
if ($telefoneValido){
echo 'Telefone Valido'.PHP_EOL;
} else echo 'Telefone Invalido'.PHP_EOL;
echo preg_replace(
$regex,
'(XX) \2',
$telefone .PHP_EOL
);
}