PHP隐藏手机号码、银行卡号、真实姓名部分方法

1、隐藏手机号码,隐藏手机号中间部分

php 复制代码
/**
 * 隐藏手机号码
 * @param int $mobile 手机号码
 * @param int $head 头部显示数
 * @param int $tail 尾部显示数
 * @param string $hide_str 隐藏字符串
 * @return string
 */
function getHiddenMobile($mobile, $head = 3, $tail = 4, $hide_str = '****') {
    $hide = mb_strlen($hide_str, 'utf-8');
    return preg_replace("/(\d{{$head}})\d{{$hide}}(\d{{$tail}})/", "$1{$hide_str}$2", $mobile);
}
echo getHiddenMobile("13588888888");

2、 隐藏银行卡号,只显示尾号方法

php 复制代码
/**
 * 隐藏银行卡号
 * @param int $card_no 银行卡号
 * @param int $tail 尾部显示数
 * @param string $hide_str 隐藏字符串
 * @return string
 */
function getBankCardNo($card_no, $tail = 4, $hide_str = ' **** **** **** ') {
    return $hide_str . substr($card_no, -$tail, $tail);
}
echo getBankCardNo("667731591283");

3、 隐藏真实姓名中间部分

php 复制代码
/**
 * 隐藏真实姓名
 * @param string $name 真实姓名
 * @return string
 */
function getHideRealName($name) {
    $length = mb_strlen($name, 'utf-8');
    if ($length == 2) {
        $hide_str = mb_substr($name, 0, 1, 'utf-8') . '*';
    } elseif ($length >= 3) {
        $hide_str = mb_substr($name, 0, 1, 'utf-8') . '*' . mb_substr($name, -1, 1, 'utf-8');
    } else {
        $hide_str = $name;
    }
    return $hide_str;
}

echo getHideRealName("陈小明");
相关推荐
无限进步_1 分钟前
二叉树的前序遍历(非递归实现)
开发语言·数据结构·c++·windows·git·visual studio
鬼蛟1 分钟前
Sentinel
java·开发语言·数据库
南境十里·墨染春水6 分钟前
C++流类库 文件流操作
开发语言·c++
咸鱼翻身小阿橙7 分钟前
Qt页面小项目
开发语言·qt·计算机视觉
IT_陈寒9 分钟前
React状态管理这个坑,我终于爬出来了
前端·人工智能·后端
somi712 分钟前
ARM-10-SQLite3 库移植笔记
jvm·笔记·sqlite
knight_9___15 分钟前
RAG面试题4
开发语言·人工智能·python·面试·agent·rag
噜噜噜阿鲁~21 分钟前
python学习笔记 | 6.3、函数-函数的参数
笔记·python·学习
编程之升级打怪22 分钟前
自定义实现Java的HashMap集合
java·开发语言
Ulyanov25 分钟前
《玩转QT Designer Studio:从设计到实战》 QT Designer Studio状态机深度应用:智能待办事项管理系统
开发语言·python·qt·gui·雷达电子对抗系统仿真