我如何在php中替换,我有一个第一个标题,如下所示:
价格从示例到示例为3,
我想输出相同的标题但是改变如下:
价格要示例来自示例为3,
我使用下面的代码但不改变第二个单词。我明白了:
价格至示例至示例为3,
echo str_replace(array("From","To"), array("To","From"), $title);
答案 0 :(得分:2)
您想要strtr:
$newTitle = strtr($title, array("From"=>"To", "To"=>"From"));
答案 1 :(得分:0)
试试这个。
$phrase = "the price From example To example is 3";
$texta = array("From", "To");
$textb = array("To", "From");
$newphrase = str_replace($texta, $textb, $phrase);
答案 2 :(得分:0)
所以问题是str_replace将按照你的数组的顺序执行它的替换,无论你把它们放在哪个顺序,它总是会覆盖第一个替换。
第一步是告诉str_replace找到" 来自"并替换为" 至"。在这一点上制作你的短语:
价格从示例到示例是3
成为
价格以示例为例,为3
然后str_replaces到数组中的下一个项目,即查找" To"并用" From"替换它。此时您可能会看到问题所在。
使用ChrisMoll的答案。