Laravel 8 高阶消息传递
集合也提供对「高阶消息传递」的支持,即集合常见操作的快捷方式。支持高阶消息传递的集合方法有: average
, avg
, contains
, each
, every
, filter
, first
, flatMap
, groupBy
, keyBy
, map
, max
, min
, partition
, reject
, skipUntil
, skipWhile
, some
, sortBy
, sortByDesc
, sum
, takeUntil
, takeWhile
and unique
.
每个高阶消息都可以作为集合上的动态属性进行访问。 例如,each
高阶消息传递在集合中的每个对象上调用一个方法:
$users = User::where('votes', '>', 500)->get();
$users->each->markAsVip();
同样,我们可以使用 sum
高阶消息传递来收集 users 集合中的「投票」总数:
$users = User::where('group', 'Development')->get();
return $users->sum->votes;