PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】


Posted in PHP onMarch 11, 2019

本文实例讲述了PHP实现的只保留字符串首尾字符功能。分享给大家供大家参考,具体如下:

整理提供两个PHP函数,用于字符串的隐藏效果

①. 隐藏部分字符串

/**
* 隐藏部分字符串
* # 此方法多用于手机号码或身份证号、银行卡号的中间部分数字的隐藏
*/
function func_substr_replace($str, $replacement = '*', $start = 1, $length = 3)
{
  $len = mb_strlen($str,'utf-8');
  if ($len > intval($start+$length)) {
    $str1 = mb_substr($str,0,$start,'utf-8');
    $str2 = mb_substr($str,intval($start+$length),NULL,'utf-8');
  } else {
    $str1 = mb_substr($str,0,1,'utf-8');
    $str2 = mb_substr($str,$len-1,1,'utf-8');
    $length = $len - 2;
  }
  $new_str = $str1;
  for ($i = 0; $i < $length; $i++) {
    $new_str .= $replacement;
  }
  $new_str .= $str2;
  return $new_str;
}

②. 隐藏部分字符串

/**
 * 只保留字符串首尾字符,隐藏中间用*代替(两个字符时只显示第一个)
 * @param string $user_name 姓名
 * @return string 格式化后的姓名
 */
function substr_cut($user_name){
  $strlen   = mb_strlen($user_name, 'utf-8');
  $firstStr   = mb_substr($user_name, 0, 1, 'utf-8');
  $lastStr   = mb_substr($user_name, -1, 1, 'utf-8');
  return $strlen == 2 ? $firstStr . str_repeat('*', mb_strlen($user_name, 'utf-8') - 1) : $firstStr . str_repeat("*", $strlen - 2) . $lastStr;
}

PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
php下用cookie统计用户访问网页次数的代码
May 09 PHP
php自动加载的两种实现方法
Jun 21 PHP
PHP大批量数据操作时临时调整内存与执行时间的方法
Apr 20 PHP
php生成txt文件标题及内容的方法
Jan 16 PHP
PHP处理postfix邮件内容的方法
Jun 16 PHP
yii添删改查实例
Nov 16 PHP
WordPress网站性能优化指南
Nov 18 PHP
PHP页面输出时js设置input框的选中值
Sep 30 PHP
yii gridview实现时间段筛选功能
Aug 15 PHP
thinkphp5.1框架容器与依赖注入实例分析
Jul 23 PHP
PHP RabbitMQ消息列队
May 11 PHP
ThinkPHP5.0框架验证码功能实现方法【基于第三方扩展包】
Mar 11 #PHP
PHP join()函数用法与实例讲解
Mar 11 #PHP
PHP lcfirst()函数定义与用法
Mar 08 #PHP
浅谈PHPANALYSIS提取关键字
Mar 08 #PHP
PHP levenshtein()函数用法讲解
Mar 08 #PHP
PHP implode()函数用法讲解
Mar 08 #PHP
浅谈php使用curl模拟多线程发送请求
Mar 08 #PHP
You might like
php读取javascript设置的cookies的代码
2010/04/12 PHP
深入PHP获取随机数字和字母的方法详解
2013/06/06 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
Laravel框架实现的上传图片到七牛功能详解
2019/09/06 PHP
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
9个javascript语法高亮插件 推荐
2009/07/18 Javascript
js 鼠标拖动对象 可让任何div实现拖动效果
2009/11/09 Javascript
Jquery选择器 $实现原理
2009/12/02 Javascript
JavaScript中的this实例分析
2011/04/28 Javascript
JS多物体实现缓冲运动效果示例
2016/12/20 Javascript
node中koa中间件机制详解
2017/08/22 Javascript
webpack4与babel配合使es6代码可运行于低版本浏览器的方法
2018/10/12 Javascript
vue权限管理系统的实现代码
2019/01/17 Javascript
Element实现表格分页数据选择+全选所有完善批量操作
2019/06/07 Javascript
详解Vscode中使用Eslint终极配置大全
2019/11/08 Javascript
在vue-cli中引入lodash.js并使用详解
2019/11/13 Javascript
一个简单的python程序实例(通讯录)
2013/11/29 Python
安装Python的教程-Windows
2017/07/22 Python
Tensorflow tf.nn.atrous_conv2d如何实现空洞卷积的
2020/04/20 Python
python如何代码集体右移
2020/07/20 Python
利用html5 canvas动态画饼状图的示例代码
2018/04/02 HTML / CSS
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
加拿大知名的国际儿童品牌:Hatley
2016/11/09 全球购物
国际花店:Pickup Flowers
2020/04/10 全球购物
在子网210.27.48.21/30种有多少个可用地址?分别是什么?
2014/07/27 面试题
心理学专业毕业生推荐信范文
2013/11/21 职场文书
市场营销职业生涯规划书范文
2014/01/12 职场文书
幼儿园教师奖惩制度
2014/02/01 职场文书
初中生期末评语大全
2014/04/24 职场文书
《水乡歌》教学反思
2014/04/24 职场文书
处级干部考察材料
2014/12/24 职场文书
同学毕业留言寄语
2015/02/27 职场文书
详解如何在Canvas中添加事件的方法
2021/04/17 Javascript
golang正则之命名分组方式
2021/04/25 Golang
Win10 最新稳定版本 21H2开始推送
2022/04/19 数码科技
win10怎么设置右下角图标不折叠?Win10设置右下角图标不折叠的方法
2022/07/15 数码科技