我有一个字符串,我想用“#”替换字符串的最后 7 个字符。例如我有“MerryChristmasu87yujh7”我想用七个“#######”替换“87yujh7”。因此,最终的字符串将是“MerryChristmasu#######”。
我尝试了以下代码,但它返回“MerryChristmasu#######1”。它不会转换所有七个结束字符。
$string = "MerryChristmasu87yujh7";
$match = substr($string, -7, -1);
$result = str_replace($match, "#######", $string);
最佳答案
应该是……
$match = substr($string, -7);
...没有最后的-1。但事实上,用...来完成要好得多。
$result = substr($string, 0, -7) . str_repeat('#', 7);
...或者,更通用的:
$coverWith = function($string, $char, $number) {
return substr($string, 0, -$number) . str_repeat($char, $number);
};
关于php - 替换字符串的最后七个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13977920/