在Laravel中,可以使用flatten
方法来扁平化关系集合或数组。flatten
方法会将多维集合或数组转化为一维,并保留原有的键值对关系。
下面是一个示例代码:
$users = collect([
[
'name' => 'John Doe',
'email' => 'john@example.com',
'roles' => [
'administrator',
'editor'
]
],
[
'name' => 'Jane Smith',
'email' => 'jane@example.com',
'roles' => [
'subscriber'
]
]
]);
$roles = $users->pluck('roles')->flatten();
$roles->each(function ($role) {
echo $role . "\n";
});
在上面的示例中,我们有一个包含用户信息的集合$users
,每个用户都有一个roles
键,其值是一个包含用户角色的数组。
我们使用pluck
方法获取所有用户的角色集合,并使用flatten
方法将多维集合转化为一维。
最后,我们可以使用each
方法遍历角色集合,并输出每个角色。
输出结果将是:
administrator
editor
subscriber