记得有这么个内置函数的,但是忘记了,baidu也没找出来
效果如:
$手机号 = '15011111111';
经过内置函数处理后成为:
150****5729大家都来看一看啦,最近脑袋浑浑噩噩的,顺便散个技术分

解决方案 »

  1.   


    $mobile = '15369874563';
    echo substr_replace($mobile,"****",3,-4);
      

  2.   

    本帖最后由 xuzuning 于 2011-07-15 16:13:49 编辑
      

  3.   

    //有点蛋疼的方法。。
    $m = '13901234567';
    $m = str_split($m);
    array_splice($m, 3, 4, '****');
    echo implode('', $m);
      

  4.   

    //继续蛋疼。。
    $m = '13901234567';
    for($i = 3; $i < 7; $i ++) $m{$i} = '*';
    echo $m;
      

  5.   

    楼主是来做福利的吧?
    我也来蛋痛$mobile = '15369874563';
    $mobile=substr($mobile,0,3).'*****'.substr($mobile,-5,3);
    echo $mobile;不过这个不灵活 哈哈..
      

  6.   

    他那个是错的。
    echo str_pad(substr($mobile,0,3),7,"*").substr($mobile,7);
      

  7.   

    大家的想法真多,嘎嘎,结贴了,周末愉快!happy!!!
      

  8.   


    瞎说  你肯定没测试$mobile = '15369874563';
    $mobile=substr($mobile,0,3).'*****'.substr($mobile,-5,3);
    echo $mobile;结果是153*****745  
    需求预期结果是153****4563