Skip to content
On this page

마스킹 처리 하기

사업자 번호 마스킹

php
/**
 * 사업자 번호 마스킹
 */
if(!function_exists('bn_marking')) {
    function bn_marking($string = '')
    {
        return preg_replace('/^[0-9]{3}(-?)[0-9]{2}(-?)[0-9]{5}$/', '**********', $string);
    }
}

휴대폰번호 마스킹

php
/**
 * 휴대폰번호 마스킹
 * @param string $phone
 * @return null|string|string[]
 */
if(!function_exists('phone_marking')) {
    function phone_marking($phone = '')
    {
        return preg_replace('/^(\d{3,4})(-?)(\d{3,4})(\w*)(-?)(\d*)/','010 - **** - ****',$phone);
    }
}

이름 마스킹

php
/**
 * 이름 마스킹
 * @param string $name
 * @return null|string|string[]
 */
if(!function_exists('name_marking')) {
    function name_marking($name = '')
    {
        return preg_replace('/.(?=.$)/u', '*', $name);
    }
}

https://koreanred.tistory.com/90

이메일 마스킹

php
/**
 * 이메일 마스킹
 * @param $str
 * @return null|string|string[]
 */
if(!function_exists('email_marking')) {
    function email_marking($email = '')
    {
        return preg_replace('/(\w+)(\w{3})(@.{1})([\w*?]+)(.+)/i', '\1***\3*\5', $email);
    }
}

문자열 마스킹

php
if(!function_exists('strlenName')) {
    /**
     * 문자열 마스킹
     * @param $name
     * @return string
     */
    function strlenName($name)
    {
        $name_length = mb_strlen($name, "utf-8");
        $sung = mb_substr($name, 0, 1, "utf-8");
        $name_star = '';
        for ($i = 1; $i < $name_length; $i++) {
            $name_star .= "*";
        }
 
        return $sung . $name_star;
    }
}