MongoCode::__construct

(PECL mongo >= 0.8.3)

MongoCode::__constructСоздает новый объект MongoCode

Описание

public MongoCode::__construct ( string $code , array $scope = array() )

Список параметров

code

Строка кода.

scope

Скоуп использования кода.

Возвращаемые значения

Возвращает новый объект MongoCode.

Примеры

Пример #1 Пример использования 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);

?>

Результатом выполнения данного примера будет что-то подобное:

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; }"
}

Пример #2 Использование MongoCode с $where

В данном примере запрашивается коллекция элементов, для которых поле 'x' меньше чем $y. Обратите внимание, что объекты PHP могут быть переданы в скоуп JavaScript и функция JavaScript возвращает boolean.

<?php

$cursor 
$collection->find(array('$where' => new MongoCode('function() { return this.x < y; }', array('y'=>$y))));

?>