如何设置" allowDiskUse"聚合方法中的选项

时间:2014-10-04 15:12:07

标签: php mongodb

如何在PHP中的聚合方法中设置allowDiskUse选项?
我试过以下但没有成功:

$out = $dbnew->$a->aggregate(
  array('$match' => $filter_array),
  array('$sort' => $sorting),
  array('$skip' => $start),
  array('$allowDiskUse' => true));

1 个答案:

答案 0 :(得分:3)

您在错误的地方提供选项。您需要使用this

public array MongoCollection::aggregate ( array $pipeline [, array $options ] )

并且您将所有管道提供为数组列表,从而执行:

public array MongoCollection::aggregate ( array $op [, array $op [, array $... ]] )

请记住,您至少需要 1.5.0 版本的PHP驱动程序。

因此,定义管道和选项:

$pipeline = array(
    array('$match' => $filter_array),
    array('$sort' => $sorting),
    ...
);

$options = array("allowDiskUse" => true);

并使用它:

$out = $dbnew->$a->aggregate($pipeline, $options);