【发布时间】:2017-10-27 07:16:45
【问题描述】:
我想获取这种格式的电话号码
您的电话号码 ********8898 已发送验证码..
PHP
【问题讨论】:
-
str_replace(),substr()和许多moooooore -
你已经尝试了什么?
我想获取这种格式的电话号码
您的电话号码 ********8898 已发送验证码..
PHP
【问题讨论】:
str_replace(), substr() 和许多moooooore
试试这个
$phone_number = '******' . substr( $phone_number, - 4);
echo $phone_number;
【讨论】:
你可以使用 substr :
$my_text = '12345678';
echo substr($my_text, 1); // 2345678
【讨论】:
*******echo substr("9876543210", 6, 4);
【讨论】:
如果你想掩盖中间部分:
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);
}
结果:
【讨论】:
如果电话号码长度大于4,那么你可以这样做:
substr_replace($number, str_repeat('*', strlen($number)-4), 0, -4);
如果你还想显示第一个数字:
substr_replace($number, str_repeat('*', strlen($number)-5), 1, -4);
【讨论】: