MongoDB\Driver\Cursor::isDead

(mongodb >=1.0.0)

MongoDB\Driver\Cursor::isDeadChecks if the cursor is still open on the server

说明

final public bool MongoDB\Driver\Cursor::isDead ( void )

Returns whether the cursor is still open on the server (i.e. the server has more results that have yet to be sent to the client).

A cursor being "dead" does not mean that it cannot be iterated further. The database sends responses in batches of documents (up to 4MB of documents per response). The client's cursor may still have results to be iterated even if the server has no more batches to send.

参数

此函数没有参数。

返回值

Returns TRUE if there are more results that have not yet been sent to the client, and FALSE otherwise.

错误/异常

范例

Example #1 MongoDB\Driver\Cursor::isDead() example

<?php

/* In this example, we insert several documents into the collection and specify
 * a smaller batchSize to ensure that the first batch contains only a subset of
 * our results and the cursor remains open on the server. */
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$query = new MongoDB\Driver\Query([], ['batchSize' => 2]);

$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['x' => 1]);
$bulk->insert(['x' => 2]);
$bulk->insert(['x' => 3]);
$manager->executeBulkWrite('db.collection'$bulk);

$cursor $manager->executeQuery('db.collection'$query);

var_dump($cursor->isDead());
$cursor->toArray();
var_dump($cursor->isDead());

?>

以上例程会输出:

bool(false)
bool(true)