在开发中,经常遇到一些小问题,比如用户隐私问题就值得关注下,在页面上显示的内容都要处理下才可以
对银行卡,手机号,真实姓名,身份证进行掩码也是常见的
/**
* 对银行卡号进行掩码处理
* 掩码规则头4位,末尾余数位不变,中间4的整数倍字符用星号替换,并且用每隔4位空格隔开
* @author 晓风<215628355@qq.com>
* @param string $bankCardNo 银行卡号
* @return string 掩码后的银行卡号
*/
function formatBankCardNo($bankCardNo){
//每隔4位分割为数组
$split = str_split($bankCardNo,4);
//头和尾保留,其他部分替换为星号
$split = array_fill(1,count($split) - 2,"****") + $split;
ksort($split);
//合并
return implode(" ",$split);
}
/**
* 对手机号进行掩码处理
* 手机号掩码的规则是末尾4位,开头余数位不变,中间4的整数倍字符用星号替换
* @author 晓风<215628355@qq.com>
* @param string $mobile 手机号
* @return string
*/
function formatMobile($mobile){
//颠倒顺序每隔4位分割为数组
$split = str_split(strrev($mobile),4);
//头和尾保留,其他部分替换为星号
$split = array_fill(1,count($split) - 2