테스트 사이트 - 개발 중인 베타 버전입니다

문자열에 휴대폰번호가 있으면 010-***-****으로 변경.

· 7년 전 · 8281 · 16

문자열에 휴대폰번호가 있으면 010 빼고 다 ***이런식으로 숨기는 방법입니다.

문자열에 휴대폰번호가 여러개 있어도 됩니다.

[code]

<?php
$test = "안녕하세요 제번호는 010-134-5678 입니다.";

// - 있는 핸드폰번호 정규식
$pattern = "/([0]{1}[1]{1}[016789]{1})-([0-9]{3,4})-([0-9]{4})/";
// 정규식에 일치하는 문자열을 배열로 가져옴.
preg_match_all($pattern, $test, $matches);

// 가져온 배열은 foreach
foreach ($matches[0] as $value) {
 //핸드폰번호를 - 로 나눔.
 $phone = explode("-", $value);
 //나눈 번호를 2,3번째 값만 숫자를 *로 변경
 $change = $phone[0]."-".preg_replace("/(\d)/", "*", $phone[1])."-".preg_replace("/(\d)/", "*", $phone[2]);
 //기존 문자열에서 핸드폰번호를 바꾼번호로 변경
 $test = str_replace($value, $change, $test);
}

//테스트
echo $test;
?>

[/code]

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 16개

이것 찾고 있었는데... 접속하자 마자 바로 보이네요 ㅎㅎ 감사합니다!!!
감사합니다.
좋은정보감사합니다
6년 전
알짜배기 정보 제공에 감사드립니다.
저도 엄지척!!! 하려 했는데, 작년자료네요~~
아까비~~~~
감사합니다~!
$str= preg_replace("/([0]{1}[1]{1}[016789]{1})-([0-9]{3,4})-([0-9]{4})/", "010-****-****", $str);

한줄이면 될거 같은데...

게시글 목록

번호 제목
716
715
714
713
712
711
710
정규표현식 PHP 정규식 정리 3
709
708
707
706
정규표현식 정규식 기초
695
689
688
687
656
651
643
638
633
606
593
584
576
562
556
539
538
537
536