博客列表 >隐藏电话号码和字符串省略处理

隐藏电话号码和字符串省略处理

福哥的博客
福哥的博客原创
2017年07月24日 20:40:141346浏览

方法1   ,有漏洞,$new_str=8989,当号码为18989896311时,就替换掉了最前面的8989,导致漏洞错误。

<?php 
/*隐藏电话号码*/
/*知识点:
1.substr 字符串截取函数
2.str_replace 字符串替换函数
*/
$str =  "15900006311";//159****6311
$new_str = substr($str,3,4);//第二个参数为开始位置,负数从最后开始数  第三个参数为取多少
$new_str1=str_replace($new_str,'****',$str);//第一个参数:寻找的字符串,第二个参数:要换成什么字符串 ,第三个参数:字符串来源,原字符串
echo $new_str1 ;//159****6311
?>

方法2  

<?php 
/*隐藏电话号码*/
/*知识点:
1.substr 字符串截取函数
2.str_replace 字符串替换函数
*/
$str =  "15942806311";//159****6311
$str1 = substr($str,0,3);
$str2 = substr($str,-4);
$new_str = $str1.'****'.$str2;
echo $new_str ;//159****6311
?>

方法2 字符串长度大于10输出'......'

<?php 
/*知识点:
1.substr 字符串长度大于10输出'......'
*/
$str =  "15942806311";//159****6311
$str1 = substr($str,0,10).'......'.$str2;
$new_str = strlen($str);
echo 1;
?>

方法2: 过滤

<?php 
/*知识点:
1.substr 字符串长度大于10输出'......'
*/
$str =  "....188...mm15942806311...";//159****6311
$new_str = trim($str,'.');//ltrim去除左边的点,rtrim去除右边的点,trim去除左右边的点,中间去不掉,所以,
echo $new_str;
$new_str1=str_replace('.','',$str);//去掉所有的点
echo $new_str1;
?>


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议