Php 如何用星号字符屏蔽字符串的某些部分
我想要一个这种格式的电话号码 您的电话号码*********8898已发送并带有验证码 PHP试试这个Php 如何用星号字符屏蔽字符串的某些部分,php,laravel,Php,Laravel,我想要一个这种格式的电话号码 您的电话号码*********8898已发送并带有验证码 PHP试试这个 $phone_number = '******' . substr( $phone_number, - 4); echo $phone_number; 您可以使用substr: $my_text = '12345678'; echo substr($my_text, 1); // 2345678 如果你想遮住中间部分: private function stringToSecret(
$phone_number = '******' . substr( $phone_number, - 4);
echo $phone_number;
您可以使用substr:
$my_text = '12345678';
echo substr($my_text, 1); // 2345678
如果你想遮住中间部分:
private function stringToSecret(string $string = NULL)
{
if (!$string) {
return NULL;
}
$length = strlen($string);
$visibleCount = (int) round($length / 4);
$hiddenCount = $length - ($visibleCount * 2);
return substr($string, 0, $visibleCount) . str_repeat('*', $hiddenCount) . substr($string, ($visibleCount * -1), $visibleCount);
}
结果:
- 1=>1
- 12=>12
- 123=>1*3
- 1234=>1**4
- 12345=>1***5
- 123456=>12**56
- 1234567=>12***67
- 12345678=>12****78
str_replace()
,substr()
以及许多您已经尝试过的Mooooo?可能重复的
private function stringToSecret(string $string = NULL)
{
if (!$string) {
return NULL;
}
$length = strlen($string);
$visibleCount = (int) round($length / 4);
$hiddenCount = $length - ($visibleCount * 2);
return substr($string, 0, $visibleCount) . str_repeat('*', $hiddenCount) . substr($string, ($visibleCount * -1), $visibleCount);
}