【发布时间】:2017-05-12 15:36:09
【问题描述】:
这是我当前的代码:
# highlight keywords in string
function highlight($string, $keyword) {
return preg_replace("/".preg_quote($keyword)."/ui", "<span class=\"h\">$0</span>", $string);
}
如果我执行这段代码:
$string = "The house is very big.";
echo highlight($string, "hous");
它会返回:
The <span class="h">hous</span>e is very big.
现在我尝试将几个关键字作为数组发送到函数的第二个参数,所有这些匹配项都应突出显示。示例:
echo highlight($string, array("hous", "big");
...应该返回:
The <span class="h">hous</span>e is very <span class="h">big</span>.
有什么想法吗?谢谢。
【问题讨论】:
-
当你用
highlight($string, array("house", "pan");调用它时会很有趣:会出现无效的HTML。
标签: php regex preg-replace