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

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

· 7년 전 · 8280 · 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);

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

게시글 목록

번호 제목
535
534
533
522
521
520
517
516
511
508
507
500
493
490
486
463
461
444
435
334
304
290
244
233
218
217
194
185
181
156