기타 유용한 팁을 공유하는 곳입니다.
  • 웹미니 한줄 전광판 영역 입니다.
글 수 57

0

조회 수 : 6169 신고 : 0

작성자 : 컴센스
포인트 : 511 | 레벨 : 2
/**
*이 글을 읽은 당신
*이미 "공대여자는 이쁘다."를 읽었고 그 것이 머리속에 각인 되었다.
*/

밑의 게시물에 필 받아서...(즉, 그냥) 만들어 봤습니다.
숫자만 세어서 7~12까지의 숫자만 체크됩니다.
그 범위가 안되는 문자열은 false로 return 합니다.

전화번호의 길이만 체크하는 것으로
어떤 형식의 번호인지는 체크하지 않습니다.

아... PHP함수에요.

<?
/**
* 전화번호 확인
* @param string $number (숫자만 세어 7~12개의 문자열)
*/

function validatePhoneNumber($number){
 $number = preg_replace('/[^0-9]/','',$number);
 switch(strlen($number)){
  case 7:;
  case 8:;
  $pattern = '/^(.{4})(.*)$/';
  $replace = '$1-$2';
  break;
  case 9:;
  case 10:;
  case 11:;
  case 12:
  $pattern = '/^(02|0.{2}|.{4})(.*)(.{4})$/';
  $replace = '$1-$2-$3';
  break;
 }
 if(!isset($pattern)){ return false; }
 return preg_replace($pattern,$replace,$number);
}

//================
// 테스트
//================
$arr = array(
  '02-1234-5678'
 ,'02'
 ,'02-1'
 ,'02-12'
 ,'02-123'
 ,'02-1234'
 ,'02-1234-5'
 ,'02-1234-56'
 ,'02-1234-567'
 ,'02-1234-5678'
 ,'02-1234-56789'
 ,'02-1234-567890'

 ,'099'
 ,'099-1'
 ,'099-12'
 ,'099-123'
 ,'099-1234'
 ,'099-1234-5'
 ,'099-1234-56'
 ,'099-1234-567'
 ,'099-1234-5678'
 ,'099-1234-56789'
 ,'099-1234-567890'

 ,'0505'
 ,'0505-1'
 ,'0505-12'
 ,'0505-123'
 ,'0505-1234'
 ,'0505-12345'
 
 ,'1599'
 ,'1599-1'
 ,'1599-12'
 ,'1599-123'
 ,'1599-1234'
 ,'1599-12345'
 ,'1599-123456'
 ,'1599-1234567'
 ,'1599-12345678'
 ,'1599-123456789'
 ,'1599-1234567890'
);

for($i=0,$m=count($arr);$i<$m;$i++){
 $number = $arr[$i];
 echo $number." \t= ";
 echo validatePhoneNumber($number);
 echo "\n";
}
 

/*
결과
02-1234-5678    = 02-1234-5678
02      =
02-1    =
02-12  =
02-123  =
02-1234        =
02-1234-5      = 0212-345
02-1234-56      = 0212-3456
02-1234-567    = 02-123-4567
02-1234-5678    = 02-1234-5678
02-1234-56789  = 02-12345-6789
02-1234-567890  = 02-123456-7890
099    =
099-1  =
099-12  =
099-123        =
099-1234        = 0991-234
099-1234-5      = 0991-2345
099-1234-56    = 099-12-3456
099-1234-567    = 099-123-4567
099-1234-5678  = 099-1234-5678
099-1234-56789  = 099-12345-6789
099-1234-567890        =
0505    =
0505-1  =
0505-12        =
0505-123        = 0505-123
0505-1234      = 0505-1234
0505-12345      = 050-51-2345
1599    =
1599-1  =
1599-12        =
1599-123        = 1599-123
1599-1234      = 1599-1234
1599-12345      = 1599-1-2345
1599-123456    = 1599-12-3456
1599-1234567    = 1599-123-4567
1599-12345678  = 1599-1234-5678
1599-123456789  =
1599-1234567890        =
*/


?>

http://www.mins01.com/20070305/m_board/tech.php?b_id=tech&type=read&b_idx=521&page=1&period=365
소중한 댓글 부탁드립니다.
추천수 10단위당 메달이 1개씩 노출되고, 추천수에 따라 배경색이 변하며, 일정수의 추천수를 받을시 BEST 아이콘이 붙게됩니다.
추천수에 따른 배경색 보기 본문으로 바로가기
  • 추천수 50개이상
  • 추천수 30개이상
  • 추천수 20개이상
  • 추천수 10개이상
  • 추천수 3개이상
닫기

첫번째 댓글을 남겨주세요!

List of Articles
번호 제목 글쓴이 날짜 추천 수 조회 수
57 배경 지워주는 사이트 title: [ani]깜빡이는 표정빽짱구 2018-12-23   473
56 좀비 pc 확인하는 방법 (악성봇 감염확인) file title: [ani]방울UI 2013-08-01   2366
55 사이트 속도 비교해주는곳 title: 새싹사뎅이 2012-06-30 1 2806
54 폴더 및 파일 숨기기 [1] 춘삼사마 2012-06-22   3409
53 페이지 로딩바 이미지를 만들어주는 사이트 file [2] title: [ani]Good luck 문구킬러 2012-05-02   4865
52 독립도메인을 구글메일과 연동했을때 안드로이드... title: [ani]깜빡이는 표정빽짱구 2011-12-21   3974
51 아이폰에서 itunes(아이튠즈) 어플이 보이지 않을때 title: [ani]깜빡이는 표정빽짱구 2011-10-17   4236
50 hit 민원24 - 주민등록등본(초본) 프린트가 안될때 title: [ani]깜빡이는 표정빽짱구 2011-08-12 1 14112
49 아이패드 무료어플 중 -_- PC원격제어 가능한 어... 코엘스브롸져 2011-01-07   7324
48 사이트의 DNS주소 정확히 조회할떄 유용한사이트.. 늘푸른 2010-07-23   5296
47 [php]validatePhoneNumber() , 전화번호 체크 컴센스 2010-05-29   6169
46 혼용하기 쉬운 10가지 용어 정리 컴센스 2010-05-29   5438
45 세탁기 청소하는 법 컴센스 2010-05-28   7226
44 오랜만에 무료문자사이트 총정리~ [2] 컴센스 2010-05-28   6649
43 [php]특정요일 빼고 날짜구하기 이병준 2010-05-28   5972
42 택배 싸게 보내는 법 컴센스 2010-05-27   7050
41 모바일용 웹페이지를 만들때 필요한 User-Agent ... 컴센스 2010-05-27   5996
40 Adobe CS3 와 CS4 에서 cooltype.dll 에러가 날때... 컴센스 2010-05-27   9727
39 네이버 자료실 액티브엑스 없이 자료받기 컴센스 2010-05-27   5550
38 [개인 무료배포] 혜움서체 세톨박이 2010-05-27   9210