PHP 휴대폰번호 짜르기 (preg_replace) "-" 넣기. 형식바꾸기

by 조쉬 posted Jul 04, 2018
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

DB에 저장된 전화번호(휴대폰번호) 형식에서 01012345678과 같은 형식으로 저장되는 경우도 있다.

이러한 형식의 전화번호를 010-1234-5636으로 짜르고 "-"를 넣어 변환하는 방법은 다음과 같다.



function format_phone($phone){ $phone = preg_replace("/[^0-9]/", "", $phone); $length = strlen($phone); switch($length){ case 11 : return preg_replace("/([0-9]{3})([0-9]{4})([0-9]{4})/", "$1-$2-$3", $phone); break; case 10: return preg_replace("/([0-9]{3})([0-9]{3})([0-9]{4})/", "$1-$2-$3", $phone); break; default : return $phone; break; } }


먼저 전화번호를 짜르기 위한 함수를 만든다.


대부분이 사용하는 휴대폰번호는 11자리(01012345678)이다. 그럴 경우 3자리(010), 4자리(1234), 4자리(5678)와 같이 나누고 그 사이에 "-"를 넣는다.

switch문을 이용하여 변수의 길이를 파악하고 해당 자리 수에 맞는 형식으로 preg_replace로 자른 부분에 - 를 넣고 바뀐 것으로 return 한다.


$format_phone = format_phone($phone);


다음과 같이 DB에서 넘어온 값을 format_phone() 함수에 넣고 리턴 값을 변수에 저장하면 된다.


$format_phone을 출력하면 010-1234-5678과 같이 - 가 입력된다.