이름가운데 별표 처리하기
본문
출력되는 이름이나 닉네임을 가운데는 별표로 가리고 싶습니다. 전화번호도 가운데는 가리고 앞뒤만 보여주고 싶은데 가능할까요?
답변 1
function masking($_type, $_data){
$_data = str_replace('-','',$_data);
$strlen = mb_strlen($_data, 'utf-8');
$maskingValue = "";
$useHyphen = "-";
if($_type == 'N'){
switch($strlen){
case 2:
$maskingValue = mb_strcut($_data, 0, 3, "UTF-8").'*';
break;
case 3:
$maskingValue = mb_strcut($_data, 0, 3, "UTF-8").'*'.mb_strcut($_data, 8, 11, "UTF-8");
break;
case 4:
$maskingValue = mb_strcut($_data, 0, 3, "UTF-8").'**'.mb_strcut($_data, 12, 15, "UTF-8");
break;
default:
$maskingValue = mb_strcut($_data, 0, 3, "UTF-8").'**'.mb_strcut($_data, 12, 15, "UTF-8");
break;
}
}else if($_type == 'P'){
switch($strlen){
case 10:
$maskingValue = mb_substr($_data, 0, 3)."{$useHyphen}***{$useHyphen}".mb_substr($_data, 6, 4);
break;
case 11:
$maskingValue = mb_substr($_data, 0, 3)."{$useHyphen}****{$useHyphen}".mb_substr($_data, 7, 4);
break;
default:
trigger_error('Not a known format parametter in function', E_USER_NOTICE);
break;
}
}else{
trigger_error('Masking Function Parameter Error', E_USER_NOTICE);
}
return $maskingValue;
}
//이름일경우
echo masking('N','홍길동')
//전화번호일경우
echo masking('P','*** 개인정보보호를 위한 휴대폰번호 노출방지 ***')
답변을 작성하시기 전에 로그인 해주세요.