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 相关文章推荐
PHP+FLASH实现上传文件进度条相关文件 下载
Jul 21 PHP
PHP 面向对象实现代码
Nov 11 PHP
PHP操作数组相关函数
Feb 03 PHP
php中获得视频时间总长度的另一种方法
Sep 15 PHP
在WINDOWS中设置计划任务执行PHP文件的方法
Dec 19 PHP
jquery+php+ajax显示上传进度的多图片上传并生成缩略图代码
Oct 15 PHP
php+ajax实现无刷新动态加载数据技术
Apr 28 PHP
php实现mysql数据库分表分段备份
Jun 18 PHP
在openSUSE42.1下编译安装PHP7 的方法
Dec 24 PHP
PHP中Notice错误常见解决方法
Apr 28 PHP
PHP并发查询MySQL的实例代码
Aug 09 PHP
PHP实现基于3DES算法加密解密字符串示例
Aug 24 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队列用法实例
2014/11/05 PHP
Yii2框架数据库简单的增删改查语法小结
2016/08/31 PHP
PHP中关于php.ini参数优化详解
2020/02/28 PHP
jscript之Read an Excel Spreadsheet
2007/06/13 Javascript
有关js的变量作用域和this指针的讨论
2010/12/16 Javascript
分享一道笔试题[有n个直线最多可以把一个平面分成多少个部分]
2012/10/12 Javascript
jquery实现的带缩略图的焦点图片切换(自动播放/响应鼠标动作)
2013/01/23 Javascript
JS修改css样式style浅谈
2013/05/06 Javascript
非jQuery实现照片散落桌子上,单击放大的LightBox效果
2014/11/28 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
fastclick插件导致日期(input[type=&quot;date&quot;])控件无法被触发该如何解决
2015/11/09 Javascript
JS中call/apply、arguments、undefined/null方法详解
2016/02/15 Javascript
微信小程序实现登录页云层漂浮的动画效果
2017/05/05 Javascript
js事件委托和事件代理案例分享
2017/07/25 Javascript
ExtJs整合Echarts的示例代码
2018/02/27 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
2018/08/08 Javascript
基于layui框架响应式布局的一些使用详解
2019/09/16 Javascript
JS实现烟花爆炸效果
2020/03/10 Javascript
浅述python中argsort()函数的实例用法
2017/03/30 Python
Python切片操作深入详解
2018/07/27 Python
pandas数据筛选和csv操作的实现方法
2019/07/02 Python
python tkinter实现屏保程序
2019/07/30 Python
Python检查图片是否损坏及图片类型是否正确过程详解
2019/09/30 Python
Python装饰器使用你可能不知道的几种姿势
2019/10/25 Python
Python使用urllib模块对URL网址中的中文编码与解码实例详解
2020/02/18 Python
Python Django搭建网站流程图解
2020/06/13 Python
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
Ibood荷兰:互联网每日最佳在线优惠
2019/02/28 全球购物
JAVA程序员面试题
2012/10/03 面试题
生产部经理岗位职责
2013/12/16 职场文书
社区综治宣传月活动总结
2014/07/02 职场文书
教师党员自我剖析材料
2014/09/29 职场文书
2014年领导班子工作总结
2014/12/11 职场文书
教师求职简历自我评价
2015/03/10 职场文书
搞笑婚庆主持词
2015/06/29 职场文书
Python可视化学习之matplotlib内置单颜色
2022/02/24 Python