您的当前位置:首页>全部文章>文章详情

PHP实现隐藏部分手机号码,身份证号码

发表于:2023-04-12 23:41:07浏览:814次TAG: #ThinkPHP #PHP #隐藏手机号码 #隐藏身份证号码

PHP隐藏部分字符串(如:姓名、用户名、身份证、IP、手机号等)函数。主要用到PHP内置函数 substr()方法,具体代码如下。

1、隐藏手机号
//1.字符串截取法
$new_tel1 = substr($tel, 0, 3).'****'.substr($tel, 7);
var_dump($new_tel1);
> string(11) "123****8910"
//2.替换字符串的子串
$new_tel2 = substr_replace($tel, '****', 3, 4);
var_dump($new_tel2);
> string(11) "123****8910"
//3.用正则
$new_tel3 = preg_replace('/(\d{3})\d{4}(\d{4})/', '$1****$2', $tel);
var_dump($new_tel3);
> string(11) "123****8910"

2、隐藏身份证号
$str = "371515111111116042";
$new_idcard = substr_replace($str,str_repeat("*",6),6,6);
var_dump($new_idcard );


3、隐藏姓名后两位或一位
$user_name = '颜汐';
$strlen = mb_strlen($user_name, 'utf-8'); //获取字符长度
$firstStr = mb_substr($user_name, 0, 1, 'utf-8');  //查找字符第一个
$str = $firstStr . str_repeat('*', $strlen - 1);  //拼接第一个+把字符串 "* " 重复 $strlen - 1 次:
var_dump($str);