Php 如何在聚合方法中设置“allowDiskUse”选项
如何在PHP中的聚合方法中设置allowDiskUse选项? 我尝试了以下方法,但没有成功:Php 如何在聚合方法中设置“allowDiskUse”选项,php,mongodb,Php,Mongodb,如何在PHP中的聚合方法中设置allowDiskUse选项? 我尝试了以下方法,但没有成功: $out = $dbnew->$a->aggregate( array('$match' => $filter_array), array('$sort' => $sorting), array('$skip' => $start), array('$allowDiskUse' => true)); 您在错误的位置提供选项。您需要使用: 您将所有管道
$out = $dbnew->$a->aggregate(
array('$match' => $filter_array),
array('$sort' => $sorting),
array('$skip' => $start),
array('$allowDiskUse' => true));
您在错误的位置提供选项。您需要使用: 您将所有管道作为阵列列表提供,因此:
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);
您在错误的位置提供选项。您需要使用: 您将所有管道作为阵列列表提供,因此:
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);
仅在较新版本的PHP驱动程序中:否则必须手动使用db->command;在较新版本的PHP驱动程序中:否则必须手动使用db->command