scroll #
Returns a SearchResult object containing the next page of the scroll session, and the scrollId
to be used in the next scroll
action. A scroll session is always initiated by a search
action and including the scroll
argument; more information below.
There is a small delay between the time a document is created and its availability in our search layer (usually a couple of seconds). That means that a document that was just created might not be returned immediately by this function.
To get more information about scroll sessions, please refer to the API reference documentation.
scroll(scrollId, [options], callback) #
Arguments | Type | Description |
---|---|---|
scrollId | string | The "scrollId" provided with the last scroll response or from the initial search request if it is the first scroll call |
options | JSON object | Optional parameters |
callback | function | Callback handling the response |
Options #
Option | Type | Description | Default |
---|---|---|---|
queuable | boolean | Make this request queuable or not | true |
scroll | string | Re-initializes the scroll session timeout to its value. If not defined, the scroll timeout is defaulted to a Kuzzle configuration | undefined |
Callback Response #
Returns an instantiated SearchResult object.
Usage #
<?php
use \Kuzzle\Kuzzle;
use \Kuzzle\Document;
use \Kuzzle\Util\SearchResult;
$kuzzle = new Kuzzle('localhost');
$dataCollection = $kuzzle->collection('collection', 'index');
try {
$searchResult = $dataCollection->scroll($scrollId, ['scroll' => '1m']);
// $searchResult instanceof SearchResult
$searchResult->getTotal();
foreach($searchResult->getDocuments() as $document) {
// $document instanceof Document
}
// return an array representing the aggregations response
$searchResult->getAggregations();
}
catch (ErrorException $e) {
}