切换(或替换)特定字符的值

时间:2013-11-09 04:46:27

标签: php string replace switch-statement

我想编写一个可以更改特定字符值的PHP代码。

例如我有字符串$ text ...

$text = "ababcdcd";

如何切换值? a = b的值,b = a,c = d和d = c。输出应该像......

$text = "babadcdc";

我已经尝试过使用str_replace(),但它只更改了一个字符。请帮帮我,谢谢。

3 个答案:

答案 0 :(得分:1)

strtr是为此而做的。

$text = "ababcdcd";
$tr = array('a' => 'b', 'b' => 'a', 'c' => 'd', 'd' => 'c');
$text = strtr($text, $tr);

echo $text; //Will output babadcdc

答案 1 :(得分:0)

试试这个:

$text = str_replace(array('a','b','c','d'),array('b','a','d','c'), $text);

答案 2 :(得分:0)

尝试这一个以获得您想要的答案。(如果您想要替换特定单词,请使用之前给出的代码)

<?php
$i=0;
$text = "ababcdcd";
$text2=$text;
$text = str_replace(array('a','c'),array('b','d'), $text);
$text2=str_replace(array('b','d'),array('a','c'), $text2);
$text3='';

for($i=0;$i<strlen($text);$i++)
{
if($i%2==0)
{
$text3.=substr($text, $i, 1); 
}
else
{
$text3.=substr($text2, $i, 1);
}
}
echo "<br>".$text3;
?>