php 手机加*星 【字符串】

场景:展示手机号时,避免暴露隐私信息,因此需要给手机号加*号

代码

php 复制代码
/**
 * 手机号码隐私加星
 * @param string $mobile 手机号
 */
function mobileToStar(string $mobile)
{   
    // 正则检测手机号
    if(!preg_match('/^1[3456789]\d{9}$/',$mobile)){
        // 手机格式错误
        return false;
    }
    // 粗暴法
    // $mobile[4] = "*";
    // $mobile[5] = "*";
    // $mobile[6] = "*";
    // $mobile[7] = "*";
    // return $mobile;
    
    // 截取替换法
    // $mobile_arr = str_split($mobile , 4); // 4个字符  1个字符串,切割 最后长度3
    // $mobile_arr[1] =  '****'; // 把中间4个用* 代替
    // return implode($mobile_arr);

    // 直接替换法
    // return substr_replace($mobile , '****' , 4,4);

    // 字符串截取法
    $start_str = substr($mobile , 0 , 4);// 从0位开始截取,取4个字符
    $in_str = str_pad('',4,'*'); // 设置 * 号
    $end_str = substr($mobile , 8 , 4); // 结束部分  从第8位开始截取,取4个
    return $start_str . $in_str. $end_str;
}

输出

php 复制代码
var_dump(mobileToStar('13112346458'));
// string(11) "1311****458"
相关推荐
编程到天明13 小时前
CTF-Web题解:“require_once(‘flag.php‘); &assert(“$i == $u“);”
网络安全·php
大白玉米1 天前
短视第三套多功能主题3.0二开模板苹果CMS插件重构版
重构·php
终焉暴龙王2 天前
CTFHub web进阶 php Bypass disable_function通关攻略
开发语言·安全·web安全·php
小鼻崽纸2 天前
cacti漏洞CVE-2022-46169的复现
php
stand_forever2 天前
laravel框架优化
php·laravel
Python涛哥2 天前
PHP框架之Laravel框架教程:1. laravel搭建
开发语言·php·laravel
大白玉米3 天前
TVBOXOS6.0双端APP二开源码完整版全开源源码重构版
java·重构·php
布说在见3 天前
踩坑与成长:WordPress、MyBatis-Plus 及前端依赖问题解决记录
服务器·学习·php
八月的雨季 最後的冰吻3 天前
php算法-- 关联数组使用,优化sip账号去重
开发语言·php
rockmelodies3 天前
【PHP安全】免费解密支持:zend52、zend53、zend54好工具
开发语言·安全·php