php 字符串替换中文,PHP中文字符串替换其中为*的方法

php 字符串替换中文,PHP中文字符串替换其中为*的方法在项目中需要对字符串的部分进行隐藏或者替换。譬如手机号码的中间几位进行隐藏,中文名字的中间替换为*号等。英文和数字等可直接用php的自带的函数进行处理。但是中文因为编码的缘故会出现不一样的效果。需要自己定义方法进行处理。此处针对大多数UTF-8的用户。//英文和数字等substr_replace()函数把字符串的一部分替换为另一个字符串。substr_replace(string,replace…

大家好,又见面了,我是你们的朋友全栈君。

在项目中需要对字符串的部分进行隐藏或者替换。譬如手机号码的中间几位进行隐藏,中文名字的中间替换为*号等。

英文和数字等可直接用php的自带的函数进行处理。但是中文因为编码的缘故会出现不一样的效果。需要自己定义方法进行处理。此处针对大多数UTF-8的用户。

//英文和数字等

substr_replace() 函数把字符串的一部分替换为另一个字符串。

substr_replace(string,replacement,start,length);

echo substr_repalce(‘18687494999′,’****’,3,4);//得到186****4999

//对于UTF-8的中文

//使用该方法可以替换中文字符串的内容–使用方法类似于substr_replace_cn

//在utf-8下一个汉字占三个字节

//$repalce 为要替换成的字符串 start为开始的字符位置默认0开始 len为替换的长度

public function substr_replace_cn($string, $repalce = ‘*’,$start = 0,$len = 0) {

$count = mb_strlen($string, ‘UTF-8’); //此处传入编码,建议使用utf-8。此处编码要与下面mb_substr()所使用的一致

if(!$count) { return $string; }

if($len == 0){

$end = $count; //传入0则替换到最后

}else{

$end = $start + $len;//传入指定长度则为开始长度+指定长度

}

$i = 0;

$returnString = ”;

while ($i < $count) {//循环该字符串

$tmpString = mb_substr($string, $i, 1, ‘UTF-8’); // 与mb_strlen编码一致

if ($start <= $i && $i < $end) {

$returnString .= $repalce;

} else {

$returnString .= $tmpString;

}

$i ++;

}

return $returnString;

}

//使用正则表达式—视情况而定

preg_replace()//执行正则表达式的搜索和替换

preg_replace($pattern, $replacement, $string);

[/php]

No matter how your heart is grieving, if you keep on believing, the dreams that you wish will come true.

不管心有多痛,若坚信不移,梦想总会成真。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142495.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 基于pexels 图片素材api,整理出素材资源库

    基于pexels 图片素材api,整理出素材资源库

    2022年2月19日
    46
  • IDEA主题插件:Material Theme UI「建议收藏」

    IDEA主题插件:Material Theme UI「建议收藏」大致效果如下:IDEA官方下载MaterialThemeUI步骤:Settings->Plugins->搜索Translation(某些版本IDEA搜索插件有问题可到官网下载再安装本地插件)->安装->重启IDEA->首次根据提示进行UI相关配置->使用配置后的UI如需离线安装插件参考如下:如需修改配置项参考如下:注…

    2022年6月27日
    217
  • ATECC508A芯片开发笔记(七):实现数字签名(Sign)并校验(Verify)证书签名

    ATECC508A芯片开发笔记(七):实现数字签名(Sign)并校验(Verify)证书签名ATECC508A芯片开发笔记(七):实现对数据数字签名(Sign)并验证(Verify)证书签名一、数据签名、验证基本流程二、利用508对数据签名并验证代码实现:三、X.509证书验证本节介绍利用508对证书数据进行签名、验证的步骤和原理。一、数据签名、验证基本流程由网络安全知识我们知道,对数据进行签名,其实就是用私钥加密而已,而验证签名就是用该私钥对应的公钥进行解密。而如果对整个数

    2022年6月12日
    29
  • connectionstring

    connectionstring在ASP.NET开发的网站根目录,有一个名为web.config的文件,顾名思义,这是为整个网站进行配置的文件,其格式为XML格式。这里主要谈谈文件中的节。节是对连接到数据库的字符串进行配置,由于M

    2022年6月30日
    19
  • pycharm激活成功教程激活码_Pycharm激活码

    pycharm激活成功教程激活码_Pycharm激活码方法一:【step1】双击桌面,打开安装好的软件图标:【step2】在弹出的界面中输入:在激活界面的Licenseserver输入:http://idea.liyang.io方法二:【step1】在浏览器中输入:http://idea.lanyus.com/打开如下页面:点击获得注册码【step2】无需修改用户名,点击获取注册码。复制该注册码,粘贴在注册界面的Activation

    2022年10月24日
    0
  • Spug – 轻量级自动化运维平台

    Spug – 轻量级自动化运维平台Spug-轻量级自动化运维平台对于中小型企业而言,进行主机和应用的管理是比较麻烦的,应用部署往往需要直接连接服务器,再进行手动的环境配置、代码拉取、应用构建和部署发布等工作,容易出错,且耗时费力。一个好的自动化运维平台,往往能大大节省人力物力,提高开发部署效率。Spug,正是一个面向中小型企业设计的轻量级自动化运维平台。Spug自动化运维平台简介Spug,是openspug在Github上开源的自动化运维平台,项目位于https://github.com/openspug/spug,

    2022年5月17日
    108

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号