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 ...
随机推荐
- MAGIC XPA最新版本Magic xpa 2.4c Release Notes
New Features, Feature Enhancements and Behavior ChangesSubforms – Behavior Change for Unsupported Ta ...
- PHP5.6.15连接Sql Server 2008配置方案
php5.6的如果想连接Sql Server 2008数据库,需要手动配置扩展和安装一个驱动. 下载SQL Server Driver for PHP的扩展包,64位系统的官方不支持,找到一个非官方的 ...
- AX7: Quick and easy debugging
This purpose of this blog is to show how you can get quickly get started with debuggingin AX7, speci ...
- 许小年:宁可踏空,不可断粮<转>
http://www.daonong.com/g/25/xsqy/2014/0716/51074.html 文│许小年 中欧国际工商学院教授 为什么我们企业的创新能力长期处于低水平呢? 深入观察,内心 ...
- items2 配色
cat ~/.bash_profile #enables colorin the terminal bash shell exportexport CLICOLOR=1 #sets up thecol ...
- chrome livestyle插件
1.sublime 安装 >step1: ctrl+shift+p >step2:ip >step3:livestyle >step4:配置ho ...
- C#如何分割多个空格分隔的字符串?
using System; using System.Text; using System.Text.RegularExpressions; namespace test { class Progra ...
- webservice wsdl axis2报错 Provider com.bea.xml.stream.MXParserFactory not found
错误信息: Exception in thread "main" javax.xml.stream.FactoryConfigurationError: Provider com. ...
- C语言中extern的用法
0x01 extern用在变量或函数的声明前,用来说明“此变量/函数是在别处定义的,要在此处引用”. 0x02 extern修饰变量的声明. 举例:若a.c中需引用b.c中的变量int v,可以在a. ...
- python学习:环境搭建
1.图解eclipse环境下安装python3.x插件支持:http://www.tuicool.com/articles/M3Afyu 其中如果 然后,选择Add按钮,Name:Python3,Lo ...