Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从laravel mongodb中的原始表达式中获得结果?_Php_Laravel_Mongodb - Fatal编程技术网

Php 如何从laravel mongodb中的原始表达式中获得结果?

Php 如何从laravel mongodb中的原始表达式中获得结果?,php,laravel,mongodb,Php,Laravel,Mongodb,我用的是Laravel和Mongodb。我想从原始表达式获取结果,但失败了 我已尝试将结果转换为数组。结果数据显示,但我不确定这是否正确 下面是我的代码示例: $result=DB::collection($tbl_name)->raw(函数($collection){ 返回$collection->aggregate([ [ “$match”=>[ “字段_1”=>[ “$regex”=>“此处有一些值” ] ] ], [ “$group”=>[ “_id”=>“$field_2”, '总金额

我用的是Laravel和Mongodb。我想从原始表达式获取结果,但失败了

我已尝试将结果转换为数组。结果数据显示,但我不确定这是否正确

下面是我的代码示例:

$result=DB::collection($tbl_name)->raw(函数($collection){
返回$collection->aggregate([
[
“$match”=>[
“字段_1”=>[
“$regex”=>“此处有一些值”
]
]
],
[
“$group”=>[
“_id”=>“$field_2”,
'总金额'=>['$sum'=>['$toDouble'=>'$field\U 3']],
'总计数'=>['$sum'=>1],
]
]
]);
});
这是使用
$result->toArray()

数组
(
[0]=>MongoDB\Model\b文档对象
(
[存储:阵列对象:专用]=>阵列
(
[\u id]=>
[总金额]=>1000.0000
[总计数]=>100
)
)
)

我希望能有另一种方法来检索结果。谢谢。

您是否使用过类似
$sql=str\u replace\u数组(“?”,$query->getBindings(),$query->toSql());//打印dd($sql)?@DhananjayKyada它不工作了。我调用了未定义的MongoDB\Driver\Cursor::getBindings()
错误。您是否在使用like
DB::collection($tbl\u name)->toSql()
?@DhananjayKyada是的。不幸的是,它不起作用。我想这是因为我使用的是带有聚合的原始函数,因此它返回的结果是
Cursor
对象。您是否使用过像
$sql=str\u replace\u数组('?',$query->getBindings(),$query->toSql());//打印dd($sql)?@DhananjayKyada它不工作了。我调用了未定义的MongoDB\Driver\Cursor::getBindings()
错误。您是否在使用like
DB::collection($tbl\u name)->toSql()
?@DhananjayKyada是的。不幸的是,它不起作用。我想这是因为我使用的是带有聚合的原始函数,因此它返回的结果是
Cursor
object。