求一个php函数,将IP地址后两位替换为*.* ,例如将192.168.1.1替换为192.168.*.* !!

解决方案 »

  1.   

    <?php
    $input = '192.168.1.1';
    $temp = explode('.', $input);
    $temp[2] = $temp[3] = '*';
    $output = implode('.', $temp);
    ?>
      

  2.   

    <?php
    $ip1 = '192.168.1.1';
    list($a, $b) = sscanf($ip1, '%d.%d');
    echo sprintf('%d.%d.*.*', $a, $b);?>
      

  3.   

    echo preg_replace("/^(\d*)\.(\d*)\..*/",'\1.\2.*.*','192.168.1.1');
      

  4.   

    echo preg_replace("/\d+\.\d+$/",'*.*','192.168.1.1');192.168.*.*
      

  5.   

    echo preg_replace("/^(\d{1,3})\.(\d{1,3})\..*/",'\1.\2.*.*','192.168.1.1');
    是不是更严格些?