как использовать прокрутку в foselasticabundle?

#php #elasticsearch #foselasticabundle

Вопрос:

Я хотел бы знать, как я могу установить прокрутку в foselasticabundle? У меня есть этот код

 $res = $this->commentIndex->createSearch($query, ['scroll' => '1m']);
 $res->addType('reading');
 $res->scroll();
 

Я знаю, что я уже близок к получению результата моего запроса. Можете ли вы помочь мне, какую функцию в foselasticabundle я могу использовать для отображения результатов моего запроса. Я пытаюсь глубоко изучить код foselasticabundle.

Ответ №1:

Я нашел ответ на этот вопрос по этой ссылке

У меня есть такой же код в ссылке

 $search = $this->commentIndex->createSearch();
$search->addType('reading');
$search->setQuery($query);
$scroll = new ElasticaScroll($search);
$results = [];


foreach ($scroll as $scrollId => $resultSet) {
      foreach ($resultSet->getDocuments() as $doc) {
         $results[$doc->getId()] = $doc;
      }
   }
 

До сих пор при таком подходе я могу получить идентификатор прокрутки и нужные мне результаты. Но если вы нашли другой способ, надеюсь, вы сможете опубликовать его в этом вопросе.