Rumah > Artikel > pembangunan bahagian belakang > elasticsearch - 哪位朋友知道es-php或mmanos/laravel-search的查询结果高亮问题
以下代码是laravel+elastisearch-php(https://github.com/elastic/elasticsearch-php)实现的,但是不能返回高亮内容,网上看了https://segmentfault.com/a/1190000003010186 下面有一个例子提到高亮,但mmanos的不太会用,比如如何找指定索引下指定类型的某个查询?
不乱以上哪种方式,哪位朋友能指点一二,感谢!!!
<code> $params=[ 'index' => 'n_index', 'type' => 'n_type', 'body' => [ 'query' => [ 'match' => ['ntitle' => '要查询的词'] ], 'highlight'=>[ 'pre_tags'=>['<tag1>', '<tag2>'], 'post_tags'=>['</tag2></tag1>', ''], 'fields'=>[ 'ntitle'=>[] ] ] ] ]; $response = $this->client->search($params); echo "<pre class="brush:php;toolbar:false">"; var_dump($response); echo "";
以上代码可以查出以下结果
<code>array(4) { ["took"]=> int(6) ["timed_out"]=> bool(false) ["_shards"]=> array(3) { ["total"]=> int(5) ["successful"]=> int(5) ["failed"]=> int(0) } ["hits"]=> array(3) { ["total"]=> int(3) ["max_score"]=> float(1.8223838) ["hits"]=> array(3) { [0]=> array(5) { ["_index"]=> string(7) "n_index" ["_type"]=> string(6) "n_type" ["_id"]=> string(1) "6" ["_score"]=> float(1.8223838) ["_source"]=> array(1) { ["ntitle"]=> string(35) "ntitle内容2" } } [1]=> array(5) { ["_index"]=> string(7) "n_index" ["_type"]=> string(6) "n_type" ["_id"]=> string(1) "7" ["_score"]=> float(1.2087858) ["_source"]=> array(1) { ["ntitle"]=> string(35) "ntitle内容1" } } [2]=> array(5) { ["_index"]=> string(7) "n_index" ["_type"]=> string(6) "n_type" ["_id"]=> string(1) "5" ["_score"]=> float(0.23033649) ["_source"]=> array(1) { ["ntitle"]=> string(35) "ntitle内容3" } } } } }</code>
没有返回高亮部分,
以下代码是laravel+elastisearch-php(https://github.com/elastic/elasticsearch-php)实现的,但是不能返回高亮内容,网上看了https://segmentfault.com/a/1190000003010186 下面有一个例子提到高亮,但mmanos的不太会用,比如如何找指定索引下指定类型的某个查询?
不乱以上哪种方式,哪位朋友能指点一二,感谢!!!
<code> $params=[ 'index' => 'n_index', 'type' => 'n_type', 'body' => [ 'query' => [ 'match' => ['ntitle' => '要查询的词'] ], 'highlight'=>[ 'pre_tags'=>['<tag1>', '<tag2>'], 'post_tags'=>['</tag2></tag1>', ''], 'fields'=>[ 'ntitle'=>[] ] ] ] ]; $response = $this->client->search($params); echo "<pre class="brush:php;toolbar:false">"; var_dump($response); echo "";
以上代码可以查出以下结果
<code>array(4) { ["took"]=> int(6) ["timed_out"]=> bool(false) ["_shards"]=> array(3) { ["total"]=> int(5) ["successful"]=> int(5) ["failed"]=> int(0) } ["hits"]=> array(3) { ["total"]=> int(3) ["max_score"]=> float(1.8223838) ["hits"]=> array(3) { [0]=> array(5) { ["_index"]=> string(7) "n_index" ["_type"]=> string(6) "n_type" ["_id"]=> string(1) "6" ["_score"]=> float(1.8223838) ["_source"]=> array(1) { ["ntitle"]=> string(35) "ntitle内容2" } } [1]=> array(5) { ["_index"]=> string(7) "n_index" ["_type"]=> string(6) "n_type" ["_id"]=> string(1) "7" ["_score"]=> float(1.2087858) ["_source"]=> array(1) { ["ntitle"]=> string(35) "ntitle内容1" } } [2]=> array(5) { ["_index"]=> string(7) "n_index" ["_type"]=> string(6) "n_type" ["_id"]=> string(1) "5" ["_score"]=> float(0.23033649) ["_source"]=> array(1) { ["ntitle"]=> string(35) "ntitle内容3" } } } } }</code>
没有返回高亮部分,