Je reçois l'erreur suivante lors de l'utilisation de la fonction aggregate()
de MongoDB dans un code PHP. Ce code fonctionne parfaitement sur ma configuration locale qui exécute MongoDB 2.2.3MongoCollection :: aggregate() est indéfini dans PHP Heroku utilisant MongoHQ
PHP Fatal error: Call to undefined method MongoCollection::aggregate() in /app/www/page.php on line 52, referer: http://referrer.url
code
foreach($cats as $key=>$val){
$cats2[$val['lable']] = $myCollection->aggregate(array(
array('$match' => array('user_id' => $user_id)),
array('$unwind' =>"\$data"),
array('$match' => array('data.category'=> $val['category'])),
array('$project' => array('name'=> "\$data.name", 'id'=>"\$data.id")),
array('$group' => array('_id'=>'$id', 'name'=> array('$first' =>'$name'))),
array('$limit' => 12)
));
}
Environnement
- PHP sur Heroku
- MongoDB 2.2. 4 avec MongoHQ Add-on
Ceci est normalement causé par un ancien pilote, vous voudrez mettre à jour le pilote pour votre installation MongoDB – Sammaye
La méthode agrégée a été introduite dans 1.3.0. On dirait que vous exécutez 1.2.xx:] – bjori
Résolu. J'ai compilé le pilote PHP MongoDB par moi même dans l'environnement Heroku. Merci – coder9