3

我正在使用这个函数来突出显示 mysql 查询的结果:

 function highlightWords($string, $word)
 {

        $string = str_replace($word, "<span class='highlight'>".$word."</span>", $string);
    /*** return the highlighted string ***/
    return $string;

 }

 ....

  $cQuote =  highlightWords(htmlspecialchars($row['cQuotes']), $search_result);

问题是,如果我输入“好”,它只会以小写“g”显示我的搜索结果,而不是“好”。我该如何纠正这个问题?

4

1 回答 1

20

改为使用str_ireplace()

编辑:这是保留原始大小写的正则表达式版本:

$string = preg_replace("/".preg_quote($word, "/")."/i", "<span class='highlight'>$0</span>", $string);
于 2010-05-01T16:46:29.693 回答