对手机和姓名进行部分隐藏方法

 /**
     * 判断手机还是姓名对其进行部分隐藏
     */
    function substr_cut($user_name)
    {
        if (preg_match("/1[3458]{1}\d{9}$/", $user_name)) { // 判断是手机号还是姓名
            $pattern1 = "/(1\d{1,2})\d\d(\d{0,3})/";
            $replacement1 = "\$1*****\$3";
            $user_name = preg_replace($pattern1, $replacement1, $user_name);
            ;
        } else {
            
            $strlen = mb_strlen($user_name, 'utf-8');
            $firstStr = mb_substr($user_name, 0, 1, 'utf-8');
            $lastStr = mb_substr($user_name, - 1, 1, 'utf-8');
            $user_name = $strlen == 2 ? $firstStr . str_repeat('*', mb_strlen($user_name, 'utf-8') - 1) : $firstStr . str_repeat("*", $strlen - 2) . $lastStr;
        }
        
        return $user_name;
    }

你可能感兴趣的:(程序)