在php中,如何用星号替换除最后4个字符以外的所有字符

在php中,如何用星号替换除最后4个字符以外的所有字符,php,Php,我有一个名为$CARD_NUM的变量,它可以有任何数量大于4的数字 如何用星号(*)替换此字符串中除最后4个字符外的所有字符 例如,如果: $CARD_NUM = '123456789012' 结果字符串应为: ********9012 如果保证变量长度至少为4位,则 $CARD_NUM = "123456789012"; echo str_repeat('*', strlen($CARD_NUM) - 4) . substr($CARD_NUM, -4); 应该这样做,如果保证变量长度至

我有一个名为$CARD_NUM的变量,它可以有任何数量大于4的数字

如何用星号(*)替换此字符串中除最后4个字符外的所有字符

例如,如果:

$CARD_NUM = '123456789012'
结果字符串应为:

********9012

如果保证变量长度至少为4位,则

$CARD_NUM = "123456789012";
echo str_repeat('*', strlen($CARD_NUM) - 4) . substr($CARD_NUM, -4);

应该这样做,

如果保证变量长度至少为4位,则

$CARD_NUM = "123456789012";
echo str_repeat('*', strlen($CARD_NUM) - 4) . substr($CARD_NUM, -4);

应该这样做,

你搜索过什么吗<代码>str_replace()-您搜索过什么吗<代码>str_replace()-非常感谢!如果我的回答能帮助你自由地投票和/或接受它,那就太好了!这应该是公认的答案。这是直截了当的,就像一个魅力!本来会加上这个作为答案的,但是这个问题因为一些愚蠢的原因被投票关闭了。如果您的字符串不能保证至少包含4个字符,这里有一个简单的修复方法,可以处理任意长度的字符串<代码>str_repeat('*',MAX(4,strlen($CARD_NUM))-4)。substr($CARD_NUM,-4)非常感谢!如果我的回答能帮助你自由地投票和/或接受它,那就太好了!这应该是公认的答案。这是直截了当的,就像一个魅力!本来会加上这个作为答案的,但是这个问题因为一些愚蠢的原因被投票关闭了。如果您的字符串不能保证至少包含4个字符,这里有一个简单的修复方法,可以处理任意长度的字符串<代码>str_repeat('*',MAX(4,strlen($CARD_NUM))-4)。substr($CARD_NUM,-4)