首頁  >  文章  >  後端開發  >  站內搜尋結果怎麼高亮顯示關鍵字?

站內搜尋結果怎麼高亮顯示關鍵字?

WBOY
WBOY原創
2016-10-10 11:56:09951瀏覽

站內搜索,返回的結果怎麼高亮顯示關鍵字?

回覆內容:

站內搜索,返回的結果怎麼高亮顯示關鍵字?

可以使用成對替換函數strtr:
string strtr ( string $str , array $replace_pairs )

<code><?php
header('Content-Type: text/plain; charset=utf-8');
$arr = array('中国', '中国人'); //关键字
foreach($arr as $v) { $new[$v] = '<b>'.$v.'</b>'; }
var_export($new); //输出: array( '中国' => '<b>中国</b>', '中国人' => '<b>中国人</b>' )
$str = '我是中国人我爱中国';
echo strtr($str, $new)."\n"; //输出: 我是<b>中国人</b>我爱<b>中国</b>

//对比:str_replace会发生重复替换,下面代码会输出: 我是<b><b>中国</b>人</b>我爱<b>中国</b>
echo str_replace(array('中国人','中国'), array('<b>中国人</b>','<b>中国</b>'), '我是中国人我爱中国');</code>

建議使用 elasticsearch 這個是java寫的搜尋引擎,基於lunce

<code><?php
$str = "Hello world!";
$keyword = "world";
echo str_replace($keyword, "<font color='red'>" . $keyword . "</font>", $str);
?></code>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn