首页 > 解决方案 > 我可以将模型数组转换为模型集合吗?

问题描述

在带有输出的 Laravel 8 后端应用程序中

$var->toArray())

如果 $var 是模型集合,则输出模型值数组

但如果 $var - 是数组,生成为:

$permissions          = Permission
    ::orderBy('name', 'asc')
    ->get()
    ->map(function ($permissionItem) use ($userPermissions) {
        return $permissionItem;
    })
    ->all();

$permissions - 将是模型数组。我可以将它转换为集合并使用 toArray() 吗?

谢谢!

标签: laravellaravel-collection

解决方案


不要调用all您的收藏。调用all为您提供项目数组。all如果您想将其保留为集合,请不要调用。

如果您无法控制该调用,那么您需要从您的数组中创建一个 Collection,然后使用它执行您想要的操作:

collect($var)->toArray()

推荐阅读