我遇到了从DB :: select()返回的数组的问题.我大量使用skip并在我的API中采用了一系列雄辩的模型.不幸的是,DB :: select返回一个数组,这显然不适用于skip和take.如何将数组转换为可以使用这些方法的集合?
我试过了
\Illuminate\Support\Collection::make(DB::select(...));
这并不像我预期的那样有效,因为它将整个数组包装在Collection中,而不是单独的结果.
是否可以将DB :: select的返回值转换为可以使用skip和take方法的“正确”集合?
更新
我也尝试过:
$query = \Illuminate\Support\Collection::make(DB::table('survey_responses')->join('people','people.id','=','survey_responses.recipient_id')->select('survey_responses.id','survey_responses.response','survey_responses.score','people.name','people.email')->get());
还告诉我:
FatalErrorException in QueryHelper.PHP line 36: Call to a member function skip() on array
干杯
我会尝试:
原文链接:https://www.f2er.com/laravel/135165.html$queryResult = DB::table('...')->get(); $collection = collect($queryResult);
如果查询结果是一个数组,则该集合将填满您的结果.请参阅该集合的官方文档. Laravel5 Collections