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("陈小明");
相关推荐
晨曦543210几秒前
针对经济学大数据的 Python 爬虫实践指南
开发语言·爬虫·python
上位机付工2 分钟前
C#上位机实现报警语音播报
开发语言·c#·上位机·plc·运动控制卡·语音播报·报警播报
千千道6 分钟前
QT 中使用 QSettings 读写 ini 配置文件
开发语言·qt
考虑考虑8 分钟前
数据库唯一索引
数据库·后端·mysql
@菜菜_达12 分钟前
AgGrid学习笔记
笔记·学习·arcgis
非优秀程序员14 分钟前
深度测评!尝试 100 多个 MCP 服务器后,挑出的最有价值 10 个 MCP【Cursor】
人工智能·后端·开源
程序员Xu15 分钟前
Vulkan学习笔记10—统一缓冲区
服务器·笔记·学习
滴答滴答嗒嗒滴37 分钟前
全栈加速:FrankenPHP 架构原理与实战案例
docker·微服务·性能优化·架构·php·高并发·frankenphp
benben04437 分钟前
Unity3D仿星露谷物语开发67之创建新的NPC
开发语言·游戏·ui·c#·游戏引擎
matdodo40 分钟前
【大数据】java API 进行集群间distCP 报错unresolvedAddressException
java·大数据·开发语言