Home >Backend Development >PHP Problem >How to hide part of the mailbox with php regular expression

How to hide part of the mailbox with php regular expression

藏色散人
藏色散人Original
2021-06-03 09:36:472617browse

php正则隐藏部分邮箱的方法:首先创建一个PHP示例文件;然后通过正则表达式“preg_replace('/([\d\w+_-]{0,100})@/', '***@', $str, -1, $count);”隐藏部分邮箱即可。

How to hide part of the mailbox with php regular expression

本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑

php正则怎么隐藏部分邮箱?

PHP使用星号替代用户名手机和邮箱这个在许多的活动界面会看到如淘宝的购物界面中的一些客户的支付宝号都是隐藏掉的哦,下面我们来看一下它的使用方法吧.

<?php
 //用户名、邮箱、手机账号中间字符串以*隐藏
function hideStr($str) {
  if (strpos($str, &#39;@&#39;)) {
    $email_array = explode("@", $str);
    //邮箱前缀
    $prevfix = (strlen($email_array[0]) < 4) ? "" : substr($str, 0, 3); 
    $count = 0;
    $str = preg_replace(&#39;/([\d\w+_-]{0,100})@/&#39;, &#39;***@&#39;, $str, -1, $count);
    $rs = $prevfix . $str;
  } else {
    //正则手机号
    $pattern = &#39;/(1[3458]{1}[0-9])[0-9]{4}([0-9]{4})/i&#39;;
    if (preg_match($pattern, $str)) {
      $rs = preg_replace($pattern, &#39;$1****$2&#39;, $str); // substr_replace($name,&#39;****&#39;,3,4);
    } else {
      $rs = substr($str, 0, 3) . "***" . substr($str, -1);
    }
  }
  return $rs;
}
?>
<?php
$account = "baidu.com";
$email = "123456@qq.com";
$phone = "15999888888";
?>

推荐学习:《PHP视频教程

The above is the detailed content of How to hide part of the mailbox with php regular expression. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn