具有歧义保护的值替换功能

时间:2013-03-01 08:58:54

标签: php str-replace

我正在尝试替换字符串中的值,我希望防止潜在的混淆。

我的功能:

<?php
function newValue($str, $from, $to) {
    return str_ireplace($from, $to, $str);
}

$new = '{NAME}';
$var = newValue('This is {TYPE} and this {NAME} value should be replaced', '{TYPE}', $new);
$var = newValue('This is {TYPE} and this {NAME} value should be replaced', '{NAME}', 'string');

echo $var;
// This is string and this string value should be replaced

是否有更好的替换方法,以避免“替换”具有与“搜索”命名相同的值时的情况。它可能不会发生,但我想知道最好的方法。我正在寻找最简单的功能 - 没有ifs和sprintf等。

1 个答案:

答案 0 :(得分:0)

我希望它有效...... $ vars = newValue('这是{TYPE},此{NAME}值应该被替换。第一次更改为{TYPE},第二次更改为{NAME}',数组('{TYPE}','{NAME}') ,array('string1','string2'));

echo $ vars;