我有一个字符串,我想用“#”替换字符串的最后7个字符。例如,我有“MerryChristmasu87yujh7”我想用七个“#######”替换“87yujh7”。因此,最后的字符串将是“MerryChristmasu #######”。
我尝试了以下代码,但它返回“MerryChristmasu ####### 1”。它不会转换所有七个结束字符。
$string = "MerryChristmasu87yujh7";
$match = substr($string, -7, -1);
$result = str_replace($match, "#######", $string);
答案 0 :(得分:8)
应该......
$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);
};
答案 1 :(得分:1)
$cuttedString = substr("your string", -7);
这应该可以胜任。