0
我有一个包含一组模板的表。这些模板有占位符,需要在运行时给定一个键值对数组进行替换。这里是我的代码作出替换:在阵列中优化字符串替换
function replace_placeholders(&$input_values) {
$result = execute_pdo_query("SELECT name,value FROM templates");
foreach($result as $currow) {
$varname = $currow[name];
$varvalue = $currow['value'];
foreach($input_values as $key => $value) {
$key = '{'.strtolower($key).'}';
$varvalue = str_replace($key,trim($value),$varvalue);
}
$input_values[$varname] = $varvalue;
}
}
问题是,有大量的模板和许多键,值对。所以,这个嵌套循环被执行了很多次,几乎花了半秒。有没有办法来优化这个替代品?我已经搜索了一个优化,但它主要是说str_replace
是可以完成的最好的。
完美的作品。接受,+1。 – recluze 2012-08-10 13:27:38