当前位置: 代码迷 >> 综合 >> php 用*号处理敏感信息
  详细解决方案

php 用*号处理敏感信息

热度:56   发布时间:2024-02-19 14:56:51.0

 

function replaceStar($str, $start = 0, $end = 0, $dot = '*') {if(empty($str)) return '';mb_internal_encoding('UTF-8');$length = mb_strlen($str);/*** 1、当昵称为2个字时:例如:测试  展示为:测*,数字字母也一样* 2、当昵称为3个字时:例如:测试中,展示位:测*中,数字字母也一样* 3、当昵称大于3个字时:和现在平台的保持一致* @time 2017-06-13*/if($length == 2){$start = $length -1;$end = 0;}else if($length == 3 || $length == 4){$start = $length - 2;$end = -1;}if(abs($start) > $length){$start = 2;}if(abs($end) > $length){$end = -2;}$preStr = mb_substr($str, 0, $start);$extStr = '';if($end !== 0){$extStr = mb_substr($str, $end);}return $preStr . str_repeat($dot, ($length - $start + $end) % $length) . $extStr;
}

 

  相关解决方案