php怎么实现隐藏号码几位

php实现隐藏号码几位的方法:1、创建一个PHP示例文件;2、通过“function hidtel($phone){…}”方法隐藏电话号码和手机号码中间4位即可。

本文操作环境:Windows7系统、PHP7.1、Dell G3电脑。

php怎么实现隐藏号码几位?

PHP隐藏电话号码/手机号码中间4位

  /**
     * 1、隐藏电话号码中间4位和邮箱
     */
    function hidtel($phone)
    {
        //隐藏邮箱
        if (strpos($phone, '@')) {
            $email_array = explode("@", $phone);
            $prevfix = (strlen($email_array[0]) < 4) ? "" : substr($phone, 0, 3); //邮箱前缀
            $count = 0;
            $str = preg_replace('/([dw+_-]{0,100})@/', '***@', $phone, -1, $count);
            $rs = $prevfix . $str;
            return $rs;
        } else {
            //隐藏联系方式中间4位
            $Istelephone = preg_match('/(0[0-9]{2,3}[-]?[2-9][0-9]{6,7}[-]?[0-9]?)/i', $phone); //固定电话
            if ($Istelephone) {
                return preg_replace('/(0[0-9]{2,3}[-]?[2-9])[0-9]{3,4}([0-9]{3}[-]?[0-9]?)/i', '$1****$2', $phone);
            } else {
                return preg_replace('/(1[0-9]{1}[0-9])[0-9]{4}([0-9]{4})/i', '$1****$2', $phone);
            }
        }

    }

    /**
     * 2、使用hidtel
     */
    public function useHidel()
    {
        $phone1 =  $this->hidtel("010-57033050");
        $phone2 =  $this->hidtel("01057033050");
        $mobil = $this->hidtel("13661226666");
        $email = $this->hidtel("1963632356@qq.com");

        return   $phone1.'</br>'.$phone2.'</br>'.$mobil.'</br>'.$email;
    }

效果:

614df86b862301736c05b21912048a1.png

//正则判断是否是邮箱、手机号和用户账号 登录时验证

  $checkmail = '/w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*/';//是否邮箱
        if(preg_match($checkmail,$userName)){
           $type = 'email';
           $value = $userName;
        }elseif(preg_match("/^1[34578]d{9}$/", $userName)){ //是否手机号
            $type = 'mobile';
            $value = $userName;
        }else{
            $type = 'user_name';
            $value = $userName;
        }

推荐学习:《PHP视频教程》

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » php怎么实现隐藏号码几位