fork download
  1. <?php
  2.  
  3.  
  4. $number = '+7 (905) 821-35-21'; // пользователь прислал номер
  5. $patterns = array();
  6. $patterns[0] = '/[-\s()]*/';
  7. $patterns[1] = '/\+7/';
  8. $replacements = array();
  9. $replacements[2] = '';
  10. $replacements[1] = '8';
  11.  
  12. $yesOrNot = preg_match('/^(\+\s?7|8)([-\s()]*\d){10}$/', $number, $matches); // проверяем корректность
  13. if ($yesOrNot) {
  14. echo "если условие выполнилось видимо номер верен \n";
  15. // очищаем от тире, пробелов и скобок и заменяем +7 на 8
  16. $number = preg_replace($patterns, $replacements, $number);
  17. }
  18. echo $number;
Success #stdin #stdout 0.02s 24032KB
stdin
Standard input is empty
stdout
если условие выполнилось видимо номер верен 
89058213521