ホームページ  >  記事  >  バックエンド開発  >  PHPでIPアドレスの下2桁を非表示にし、携帯電話番号の中桁を*に置き換える方法

PHPでIPアドレスの下2桁を非表示にし、携帯電話番号の中桁を*に置き換える方法

WBOY
WBOYオリジナル
2016-07-25 09:00:281806ブラウズ
有时我们需要在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.*.*
?>


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。