我正在尝试用匹配的字母替换字符串中的字母或字母,但我希望它是随机的。
$string = "This is random text in this string.";
以下是我将在下面更改的一些字母示例
s = $
,o = 0
,i = l
我正在尝试随机替换上面那个字符串中的字母,输出如下所示。这将是随机的,并且不需要随机改变所有字母,与上面的字母匹配。
输出示例
This is rand0m text in this $tring.
Thi$ is random text in this string.
我将如何在PHP中执行此操作?
答案 0 :(得分:1)
像
这样的东西$string = "This is random text in this string.";
$replace = array('s' => '$', 'o' => '0', 'i' => '1');
foreach(array_rand($replace, (count($replace)/2)+1) as $key) {
$string = str_replace($key, $replace[$key], $string);
}
答案 1 :(得分:1)
不能再比这更随机了。添加到数组$ a以获取更多替换字符
$str = 'This is random text in this string.';
$str2 = '';
function repl($char){
$arr = array(
's' => '$',
't' => 'T'
);
foreach($arr as $key=>$a){
if($char == $key) return $a;
}
return $char;
}
foreach(str_split($str) as $char){
if(!rand(0, 9)) $str2 .= repl($char);
else $str2 .= $char;
}
echo $str."\n";
echo $str2;