я попытался показать все документы, который соответствует либо названию или тело раздела статьи в упругом поиске и я написал следующий код в PHPмногопользовательский поиск в elasticsearch не работает?
if(!empty($_GET))
{
$bodysearch=$_GET['bodysearch'];
$titlesearch=$_GET['titlesearch'];
$params = [
'index' => 'pages',
'type' => 'page',
'body' => [
'query' => [
'bool'=>[
'should'=>[
'match'=>['title'=>$titlesearch],
'match'=>['body'=>$bodysearch]
]
]
]
]
];
$result = $client->search($params)
}
и написал следующее, чтобы отобразить результат
foreach($result['hits']['hits'] as $hit)
{
$sources=$hit['_source'];
echo '<a href="javascript:;" style="display:block;">'.$sources['title'].'</a>';
echo substr($sources['body'], 0,100).'....';
}
Он отображает только документ списка, раздел тела которого соответствует содержанию в $bodysearch
, но я хочу получить список документов, соответствующих $titlesearch
, для названия или соответствия $bodysearch
содержимому тела или совпадению обоих, что я должен делать для таких целей.