(PECL mongo >=0.9.3)
MongoDB::execute — �����ݿ������������JavaScript
MongoDB������������һ��JavaScript���档������������ڷ�������ִ������JavaScript���롣�������Ҫ���ý�����Դ����������ϣ������ڷ������ϴ���һЩ������Լ������紫�䣬��ô������������á�
�ڷ���������JavaScript����ᴴ��һ��д����������ζ��������������������ִ�С�������һ�κ�ʱ�ϳ��Ĵ���֮ǰ���뿼�ǵ���һ�㡣
����һ�����ݿ�ָ��İ�װ������˵�൱�ڣ�
<?php
public function execute($code, $args) {
return $this->command(array('$eval' => $code, 'args' => $args));
}
?>
�����ִ�еĴ���ֻ��һ����䣬��ֻ��һ�У�MongoDB����һ��return��䡣������һЩֱ�۵���Ϊ��������������ӷ���"foo"��
<?php
$db->execute('"foo";');
?>
�����������������ӷ���NULL
:
<?php
$db->execute('"bar"; "foo";'); // ������
$db->execute('db.foo.count(
);'); // ����
?>
Ϊ�˷�ֹ�������Ϊ����ò�Ҫ����MongoDB������ķ���ֵ��������ȷ���ṩһ��return��䡣����������У����Ѵ����Ϊ��
<?php
$db->execute('"bar"; return "foo";');
$db->execute('return db.foo.count(
);');
?>
������һ�����᷵��"foo"���ڶ������᷵��"foo"���ϵij��ȡ�
����ִ�н��
Example #1 �� MongoDB::execute() ʵ��
<?php
$response = $db->execute("function() { return 'Hello, world!'; }");
echo $response['retval'];
?>
�������̵���������ڣ�
Example #2 �������� MongoDB::execute() ʵ��
��ѡ�IJ����������ݸ�JavaScrip����
<?php
$response = $db->execute("function(greeting, name) { return greeting+', '+name+'!'; }", array("Good bye", "Joe"));
echo $response['retval'];
?>
�������̵���������ڣ�
Example #3 ������ʵ��
���ʹ�� MongoCode ��������ַ�����Ϊ��һ�����������Դ���һ��������Ҫִ�е�JavaScript�С�
<?php
$func =
"function(greeting, name) { ".
"return greeting+', '+name+', says '+greeter;".
"}";
$scope = array("greeter" => "Fred");
$code = new MongoCode($func, $scope);
$response = $db->execute($code, array("Goodbye", "Joe"));
echo $response['retval'];
?>
�������̵���������ڣ�