我正在使用mongoDB PHP,当我使用查询查询或聚合框架时,结果是一个游标,我可以使用foreach循环或while循环迭代游标。例如,我有以下查询来执行
$result = $collection->find();
我能够使用以下两种方法迭代结果
1- foreach($result as $mongoid => $doc) {
echo "mongoid is " . $mongoid;
print_r($doc);
}
2- while ( $result->hasNext() ) {
$doc = $result->getNext();
$result->next();
print_r( $doc );
echo "find one doc in cursor\n";
}
以上哪种迭代方法最好,为什么?
答案 0 :(得分:0)
在这种情况下使用foreach
或while
时没有任何显着差异。读环性能是一样的。使用foreach
可使您的代码更具可读性。
您可以在The PHP Benchmark上检查写/读循环性能。