Próbuję użyć kruszywa z projektem, dobierać i porządek, ale otrzymuję wyjątek (MongoResultException
być dokładne) mówiącRurociąg specyfikacja etap obiekt musi zawierać dokładnie jedno pole z php Mongo łącznej
exception: A pipeline stage specification object must contain exactly one field.
Działa dobrze, gdy nie używam sortowania i limitu, ale potrzebuję ich do tego. Powód, dla którego nie używam find()
ponieważ czytam gdzieś, że może on zwiększyć wydajność. Proszę o pomoc
$query = array(.... //An actual query that works with find()
$collection = $this->db->CollectionName;
$project = array(
'$project' => array(
'Field1' => 1,
'Field2'=> 1,
'Field3'=> 1,
'Field4' => 1
)
);
$match = array('$match'=>$query);
$sort = array('Field3' => -1, 'Field4'=>-1);
$limit = array('$limit' => 100);
$result = $collection->aggregate(array($match,$project,$sort,$limit));
return $result;