>백엔드 개발 >PHP 문제 >PHP에서 숫자의 가운데 네 자리를 숨기는 방법

PHP에서 숫자의 가운데 네 자리를 숨기는 방법

王林
王林원래의
2020-08-20 14:11:422788검색

php实现隐藏数字中间四位的方法:可以利用substr_replace()函数来实现。substr_replace()函数可以把字符串的一部分替换为另一个字符串,并返回被替换的字符串。

PHP에서 숫자의 가운데 네 자리를 숨기는 방법

substr_replace() 函数把字符串的一部分替换为另一个字符串,并返回被替换的字符串。如果 string 是数组,则返回数组。

(推荐教程:php图文教程

语法:

substr_replace(string,replacement,start,length)

参数:

  • string    必需。规定要检查的字符串。    

  • replacement    必需。规定要插入的字符串。    

  • start    必需。规定在字符串的何处开始替换。

正数 - 在字符串中的指定位置开始替换

负数 - 在从字符串结尾的指定位置开始替换

0 - 在字符串中的第一个字符处开始替换    

  • length    可选。规定要替换多少个字符。默认是与字符串长度相同。

正数 - 被替换的字符串长度

负数 - 表示待替换的子字符串结尾处距离 string 末端的字符个数

0 - 插入而非替换    

(学习视频推荐:php视频教程

实现代码:

<?php
$tel = &#39;12345678910&#39;;
//1.字符串截取法
$new_tel1 = substr($tel, 0, 3).&#39;****&#39;.substr($tel, 7);
var_dump($new_tel1);
//2.替换字符串的子串
$new_tel2 = substr_replace($tel, &#39;****&#39;, 3, 4);
var_dump($new_tel2);
//3.用正则
$new_tel3 = preg_replace(&#39;/(\d{3})\d{4}(\d{4})/&#39;, &#39;$1****$2&#39;, $tel);
var_dump($new_tel3);
?>

输出结果:

> string(11) "123****8910"
> string(11) "123****8910"
> string(11) "123****8910"

위 내용은 PHP에서 숫자의 가운데 네 자리를 숨기는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.