Docs Menu

Docs HomePHP Library Manual

MongoDB\MapReduceResult::getIterator()

On this page

  • Definition
  • Return Values
  • Example
  • See Also
MongoDB\MapReduceResult::getIterator()

Returns a Traversable, which may be used to iterate through the results of the map-reduce operation.

function getIterator(): Traversable

A Traversable, which may be used to iterate through the results of the map-reduce operation.

This example iterates through the results of a map-reduce operation.

<?php
$collection = (new MongoDB\Client)->test->zips;
$map = new MongoDB\BSON\Javascript('function() { emit(this.state, this.pop); }');
$reduce = new MongoDB\BSON\Javascript('function(key, values) { return Array.sum(values) }');
$out = ['inline' => 1];
$result = $collection->mapReduce($map, $reduce, $out);
foreach ($result as $population) {
var_dump($population);
};

The output would then resemble:

object(stdClass)#2293 (2) {
["_id"]=>
string(2) "AK"
["value"]=>
float(544698)
}
object(stdClass)#2300 (2) {
["_id"]=>
string(2) "AL"
["value"]=>
float(4040587)
}
object(stdClass)#2293 (2) {
["_id"]=>
string(2) "AR"
["value"]=>
float(2350725)
}
object(stdClass)#2300 (2) {
["_id"]=>
string(2) "AZ"
["value"]=>
float(3665228)
}
←  MongoDB\MapReduceResult::getExecutionTimeMS()MongoDB\MapReduceResult::getTiming() →