PHP用户名用星号处理
PHP用户名用*号处理:
用户名:英文、中文、中英文混合的、中英文字符混合的
处理为:首字母和末尾保留,中间用*号代替(一个字符直接显示,两个字符:张*,三个以上字符:宋*丹)
首先判断字符中是否包含中文字符,如果有使用mb_ 系列函数处理(这里的中文使用的是UTF-8格式的)
UTF-8中文正则:"/[\x{4e00}-\x{9fa5}]+/u"
GB2312中文正则:"/[".chr(0xa1)."-".chr(0xff)."]+/"
//判断是否包含中文字符
if(preg_match("/[\x{4e00}-\x{9fa5}]+/u", $str)) {
//按照中文字符计算长度
$len = mb_strlen($str, 'UTF-8');
//echo '中文';
if($len >= 3){
//三个字符或三个字符以上掐头取尾,中间用*代替
$str = mb_substr($str, 0, 1, 'UTF-8') . '*' . mb_substr($str, -1, 1, 'UTF-8');
} elseif($len == 2) {
//两个字符
$str = mb_substr($str, 0, 1, 'UTF-8') . '*';
}
} else {
//按照英文字串计算长度
$len = strlen($str);
//echo 'English';
if($len >= 3) {
//三个字符或三个字符以上掐头取尾,中间用*代替
$str = substr($str, 0, 1) . '*' . substr($str, -1);
} elseif($len == 2) {
//两个字符
$str = substr($str2, 0, 1) . '*';
}
}
PHP用户名用星号处理的更多相关文章
- 3Linux常用命令
文件目录管理命令 1.touch touch 文件名 #创建空白文件 -a 修改读取(访问)时间atime -m 修改修改时间mtime -d 同时修改atime 和 mtime touch ...
- PHP用星号隐藏部份用户名、身份证、IP、手机号等实例
PHP用星号隐藏部份用户名.身份证.IP.手机号等实例 http://www.jb51.net/article/48800.htm 作者: 字体:[增加 减小] 类型:转载 时间:2014-04-08 ...
- PHP用星号隐藏部份用户名、身份证、IP、手机号、邮箱等实例
一.仿淘宝评论购买记录隐藏部分用户名,以下代码亲测可用. function cut_str($string, $sublen, $start = 0, $code = 'UTF-8') { if( ...
- PHP以星号隐藏用户名手机号码和邮箱实例
一款简单实用的PHP以星号隐藏用户名手机号码和邮箱实例,将用户的一些文字信息隐藏一部分用星号代替,以便于保护用户隐私. 隐藏函数: function hideStar($str) { //用户名.邮箱 ...
- PHP以星号隐藏用户名手机和邮箱
<?php class Hidesatr{ function hide_star_do($str) { //用户名.邮箱.手机账号中间字符串以*隐藏 if (strpos($str, '@')) ...
- [ExtJS5学习笔记]第二十二节 Extjs5中使用beforeLabelTpl配置给标签增加必填选项星号标志
本文地址:http://blog.csdn.net/sushengmiyan/article/details/39395753 官方例子:http://docs.sencha.com/extjs/5. ...
- 解决Chrome浏览器自动记录用户名和密码的黄色背景问题和该解决方法与tab切换至下一个input冲突的问题。
哈哈哈,是不是标题很长呀,不逗你们了.其实这么长的标题主要就说了两件事: 第一件:解决Chrome浏览器自动记录用户名和密码的黄色背景问题. 第二件:输入完用户名后按下tab键切换至下一个输入密码in ...
- 【WCF】使用“用户名/密码”验证的合理方法
我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然 ...
- C# 用SoapUI调试WCF服务接口(WCF中包含用户名密码的验证)
问题描述: 一般调试wcf程序可以直接建一个单元测试,直接调接口. 但是,这次,我还要测试在接口内的代码中看接收到的用户名密码是否正确,所以,单一的直接调用接口方法行不通, 然后就想办法通过soapU ...
随机推荐
- [DFNews] Elcomsoft 发布EPPB 2.00.233
Elcomsoft Phone Password Breaker 是俄罗斯Elcomsoft公司推出的手机取证工具,能够针对黑莓.苹果等手机的备份文件进行多种方式破解,支持远程获取iCloud数据. ...
- 【HOW】如何通过URL给Reporting Services报表传递参数
[本地模式Reporting Services] 参见官方文档:http://msdn.microsoft.com/en-us/library/ms154042.aspx 示例:http://serv ...
- xcode 工具学习笔记
1. 快速打开辅助界面 快捷键:使用Option + 单击文件 2. 辅助编辑器更多打开方式 快捷键: Option+shift +单击文件 3. tab页面快捷键 快捷键: Co ...
- excel导出字符串
"style", "vnd.ms-excel.numberformat: @;"
- sqlserver表分区
参考:http://www.cnblogs.com/knowledgesea/p/3696912.html 及百度搜索sqlserver表分区 create partition function sg ...
- eaby技术架构变迁
如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 最近在infoq上面看到 ebay介绍其系统架构变迁以及系统设计分享方面的讲座,其中 ...
- C#小程序飞行棋地图绘制
1. 初始化地图,在绘制时可先将地图进行初始化,用数组来存储关卡的位置,然后利用循环给地图中 关卡所在处赋予代表关卡的值. 关键代码如下 /// <summary> /// 初始化游戏地图 ...
- LR12.53—第4课:准备Vuser脚本进行负载测试
第4课:准备Vuser脚本进行负载测试 在前面的课程中,您确认您的Vuser脚本的回放产生了真正的用户的精确仿真.下一个步骤是准备的脚本负载测试.如何将多用户系统同时工作的工作?会拖慢系统到不可接受的 ...
- jQuery Validate + Ckeditor 驗證 textarea 解決方式
jQuery Validate + Ckeditor 驗證 textarea 解決方式 html <textarea name="content" id="cont ...
- grub的sol
http://smcijohnny.blogspot.com/2015/06/linuxsolserial-over-lan.html https://www.hiroom2.com/2016/06/ ...