首页 > 请教个 php 字符串部分内容替换为星号的代码

请教个 php 字符串部分内容替换为星号的代码

$sale['buyer_name'] 这个值为买家帐号

直接在网站显示的话 容易泄漏用户隐私的

怎样对这个值进行处理,像淘宝那样的, 把中间的内容换成星号,比如把最熟悉的陌生人替换成最熟***生人,13137777777替换为1313****777


substr_replace($mix string,"****",$start,$length);


php<?php
$test = array(
    '为星号的代码',
    'helloworld',
    '1453674625',
    '123',
    '1',
    '11',
    '星号',
    '星号的llowor为'
);

foreach($test as $v){
    echo preg_replace('/^(..).*(..)$/', '$1****$2', $v),"\n";
}

请自行修改, 因为需要匹配至少四个字节的数据, 所以当长度小于4时, 返回原内容.

运行效果如下(该文件的编码为 GB2312):

===========我是分隔线=============
如果文件的编码为UTF-8, 则正则中需要添加 u 修饰符, 见下图.

【热门文章】
【热门文章】