(PECL mongo >= 0.8.3)
MongoCode::__construct — Crée un nouvel objet de code
$code
[, array $scope
= array()
] )
code
Une chaîne de code.
scope
Un contexte d'exécution du code.
Retourne un nouvel objet de code.
Exemple #1 Exemple avec MongoCode::__construct()
<?php
$code = new MongoCode('function() { '.
'for(i=0;i<10;i++) {'.
'db.foo.update({z : i}, {z : x});'.
'}'.
'return x-1;'.
'}', array("x" => 4));
var_dump($code);
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
object(MongoCode)#1 (2) { ["scope"]=> array(1) { ["x"]=> int(4) } ["code"]=> string(80) "function() { for(i=0;i<10;i++) { db.foo.update({z : i}, {z : x}); } return x-1; }" }
Exemple #2 Utilisation de MongoCode() et $where
Cette requête interroge une collection pour récupérer les éléments où le champ 'x' est inférieur à la valeur $y. Notez que les objets PHP peuvent être passé dans le contexte JavaScript, et que la fonction JavaScript retourne un booléen.
<?php
$cursor = $collection->find(array('$where' => new MongoCode('function() { return this.x < y; }', array('y'=>$y))));
?>