如何用给定的数组替换多个模式?

时间:2015-05-13 10:52:49

标签: php preg-replace

我有像

这样的字符串
$text = "Hello :name its your :num_visit";

和数组

 $attr = [ ":name" => "Danny", ":num_visit" => 6];

我想用数组中的给定值替换$ text的模式,例如:name,:num_visit(数组具有相同的键名)。

用PHP可以吗?

3 个答案:

答案 0 :(得分:2)

只需使用strtr()并将搜索/替换数组作为第二个参数传递,.e.g

SELECTs

输出:

<?php

    $text = "Hello :name its your :num_visit";
    $attr = [":name" => "Danny", ":num_visit" => 6];
    echo strtr($text, $attr);

?>

答案 1 :(得分:1)

使用str_replace()替换它们。将keysearch的{​​{1}}传递给value -

replace

<强>输出

  

你好Danny你的6

str_replace()

Working code

答案 2 :(得分:0)

您可以使用str_replace()

$text = "Hello :name its your :num_visit";
str_replace( array(':name',':num_visit'), array('Danny','6'), $text );

:name将替换为Danny,而:num_visit将替换为6