Arn*_*rdt 4 php arrays collections laravel
有没有一种(简单的)方法可以将 Eloquent Collection 转换为实际数组而不转换元素本身?
当我尝试将集合传递到像array_rand($collection). 这给了我错误:array_rand() expects parameter 1 to be array, object given。
我通过使用$collection->shuffle()->first();which 工作正常来解决这个问题,当然我可以遍历集合并将所有内容推送到数组中,但出于好奇,我想知道我是否忽略了某些东西。
更新/结论
allaIlluminate\Support\Collection和 a上的方法似乎有所不同Illuminate\Database\Eloquent\Collection。Eloquent 集合上的 all 返回一个支持集合,支持集合返回一个数组。
因此,要获得您需要使用的 Eloquent 模型数组 SomeModel::all()->all();
您可以使用all集合助手:
all 方法返回由集合表示的底层数组:
collect([1, 2, 3])->all();
// [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8085 次 |
| 最近记录: |