有时我们需要在php代码中,隐藏IP地址的后两位,及替换手机号码中间数字为*号,以保密相关数据,本文为大家介绍了几种实现方法,有兴趣的朋友,不妨参考下。
1、隐藏IP后两位的方法。 <?php /** * 隐藏IP后两位 * by 程序员之家 http://bbs.it-home.org */ function ip2unkonw($ip) { $add = explode('.', $ip, 4); return $add[0]. '.'. $add[1]. '.*.*'; } ?> ログイン後にコピー 2、 php正则格式化IP地址,隐藏后一位。 <?php //隐藏后一位 return preg_replace('/(\d+)\.(\d+)\.(\d+)\.(\d+)/is',"$1.$2.$3.*",$ip); //隐藏IP最后几位为* echo ereg_replace("[^\.]{1,3}$","*",$ip); ?> ログイン後にコピー 3、php替换手机号中间数字为*号 <?php //隐藏手机号部分数字 $string = "13811111100"; $pattern = "/(1\d{1,2})\d\d(\d{0,3})/"; $replacement = "\$1****\$3"; print preg_replace($pattern, $replacement, $string); ?> ログイン後にコピー 4、php实现隐藏Ip地址最后一段或者最后两段的方法 <? //--隐藏IP后几位 //by 程序员之家 bbs.it-home.org $ip='127.0.0.1'; $reg1='/((?:\d+\.){3})\d+/'; $reg2='~(\d+)\.(\d+)\.(\d+)\.(\d+)~'; echo preg_replace($reg1,"\\1*",$ip);//以上输出结果为:127.0.0.* echo "------------------<br/>"; echo preg_replace($reg2,"$1.$2.*.*",$ip);//以上输出结果为:127.0.*.* ?> ログイン後にコピー |