PHP PHP 隐藏字符敏感信息

ellis · 2019-11-15 17:45:41 · 热度: 89

PHP 隐藏字符敏感信息

如:隐藏姓名、身份证、电话号码等敏感信息,用 *等特殊字符替换

/**
     * 隐藏字段信息
     * @param string $msg
     * @param int $length 显示长度
     * @param int $show_type  1:隐藏前面显示后面(如:******123 ),2:隐藏后面显示前面(如:123****** )
     * @param string $char 特殊字符
     * @return string
     */
    function hiddenMsg($msg, $length, $show_type=1, $char='*')
    {
        if(!$msg || !in_array($show_type, [1, 2]))
        {
            return $msg;
        }

        $msg_length = mb_strlen($msg, 'utf-8');
        $char_length = $msg_length-$length;
        if($char_length < 1)
        {
            return $msg;
        }

        if($show_type == 1)
        {
            return str_pad('', $char_length, $char).mb_substr($msg, -$length);
        }

        return mb_substr($msg, 0, $length).str_pad('', $char_length, $char);
    }

猜你喜欢:
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册