在php中字符串中指定位置的字符替換為星號我們有很我函數可以實現如有substr,preg_replace,substr_replace等下面我分別給這三個函數分別介紹一個實例,主要講到電話,身份證.
手機號碼字符串替換為星號代碼:
- <?php
- $str = "15832818835";
- echo substr($str,0,3).'*****'.substr($str,8,strlen($str));//保留前三位和后三位
- ?>
- //或用正則
- <?php
- $s='www.111cn.net的王經理:13999312365 李經理:13588958741';
- $s=preg_replace('#(d{3})d{5}(d{3})#', '${1}*****${2}', $s);
- echo $s;
- //王經理:139*****365 李經理:135*****741
- ?>
替換字符串中間位置字符為星號,代碼如下:
- function half_replace($str){
- $len = strlen($str)/2;
- return substr_replace($str,str_repeat('*',$len),ceil(($len)/2),$len);
- }
- echo half_replace('test'),"n",half_replace('tests'),"n",half_replace('exceptions');
PHP身份證號打星號,代碼如下:
- echo strlen($idcard)==15?substr_replace($idcard,"****",8,4):(strlen($idcard)==18?substr_replace($idcard,"****",10,4):"111cn.net提示身份證位數不正常!");
新聞熱點
疑難解答