在 PHP5 中搜索多个值并将其替换为多个/不同的值?

2022-08-30 13:46:10

是否有内置的PHP函数可以将字符串中的多个值替换为一个数组,该数组确切地指示用什么替换什么?

例如:

$searchreplace_array = Array('blah' => 'bleh', 'blarh' => 'blerh');
$string = 'blah blarh bleh bleh blarh';

结果将是:'bleh blerh bleh bleh blerh'。


答案 1

您正在寻找str_replace()

$string = 'blah blarh bleh bleh blarh';
$result = str_replace(
  array('blah', 'blarh'), 
  array('bleh', 'blerh'), 
  $string
);

其他提示:

如果你被困在一个像你的例子中的关联数组,你可以像这样拆分它:

$searchReplaceArray = array(
  'blah' => 'bleh', 
  'blarh' => 'blerh'
);
$result = str_replace(
  array_keys($searchReplaceArray), 
  array_values($searchReplaceArray), 
  $string
); 

答案 2
$string = 'blah blarh bleh bleh blarh';
$trans = array("blah" => "blerh", "bleh" => "blerh");
$result = strtr($string,$trans);

您可以查看手册以获取详细说明。