Navigation
This version of the documentation is archived and no longer supported. To learn how to upgrade your version of PHP Library Manual, refer to the upgrade documentation.

MongoDB\MapReduceResult::getTiming()

Definition

MongoDB\MapReduceResult::getTiming

Returns timing statistics for the map-reduce operation.

function getTiming(): array

Timing statistics will only be available if the verbose option was specified for MongoDB\Collection::mapReduce().

Return Values

An array of timing statistics for the map-reduce operation. If no timing statistics are available, the array will be empty.

Examples

This example specifies the verbose option for MongoDB\Collection::mapReduce() and reports the timing statistics for 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, ['verbose' => true]);

var_dump($result->getTiming());

The output would then resemble:

array(5) {
  ["mapTime"]=>
  int(163)
  ["emitLoop"]=>
  int(233)
  ["reduceTime"]=>
  int(9)
  ["mode"]=>
  string(5) "mixed"
  ["total"]=>
  int(233)
}

See Also