사이트 내에서 검색할 때 반환된 결과에서 키워드를 강조 표시하는 방법은 무엇입니까?
사이트 내에서 검색할 때 반환된 결과에서 키워드를 강조 표시하는 방법은 무엇입니까?
쌍 교체 함수 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>