在php中对insert调用Mongodb存储函数
我将Mongodb 3.2与PHP一起在Laravel中与Jensseger Laravel Mongodb一起使用,文档如下: 我通过这段代码插入数据,效果很好:在php中对insert调用Mongodb存储函数,php,mongodb,jenssegers-mongodb,Php,Mongodb,Jenssegers Mongodb,我将Mongodb 3.2与PHP一起在Laravel中与Jensseger Laravel Mongodb一起使用,文档如下: 我通过这段代码插入数据,效果很好: $clientes = DB::connection(env('DB_DATABASE'))->collection('catalogo_clientes'); $clientes->insert(array("_id" => "1", "nombre" => "test", "disponible" =&g
$clientes = DB::connection(env('DB_DATABASE'))->collection('catalogo_clientes');
$clientes->insert(array("_id" => "1", "nombre" => "test", "disponible" => 1));
db.loadServerScripts();
db.catalogo_clientes.insert(
{
_id: getNextId("clientes"),
nombre: "Bob X.",
disponible: 1
}
)
但是,当通过命令行插入时,我希望使用我在mongo中创建的函数,而不是“_id”中的“1”,我通常会使用这个函数,这很好:
$clientes = DB::connection(env('DB_DATABASE'))->collection('catalogo_clientes');
$clientes->insert(array("_id" => "1", "nombre" => "test", "disponible" => 1));
db.loadServerScripts();
db.catalogo_clientes.insert(
{
_id: getNextId("clientes"),
nombre: "Bob X.",
disponible: 1
}
)
如何使用“getNextId()”的相同函数通过php插入mongo?这是一个使用Jensegers库的示例:
$result = DB::collection('YOUR_COLLECTION')->raw(function($collection) use ($folio, $name, $type, $entrega_digital, $motivo_rechazado)
{
return $collection->updateOne(
array('Folio' => (int)$folio, 'documentos_'.$type.'.nombre' => $name),
array(
'$set' => array('documentos_'.$type.'.$.entrega_digital' => $entrega_digital, 'documentos_'.$type.'.$.motivo_rechazado' => $motivo_rechazado)
)
);
});
使用游标,您可以使用所有本机方法:可能重复我通过插入运行函数,我也看到了这个问题,但它没有解决我的问题:(