參考以下 $usersData
,請利用 Laravel Collection 實作以下規格:
- 先以
isVip
分組,true
排前面,false
排後面。 - 對已經分組的結果,再以
isOnline
分組,true
排前面,false
排後面。 - 對所有分組以
followerCount
由高至低排序。 - 把所有分組結果重新組合成只有一層的 array 。
- 預期重新排序過的
$usersData
應如下:
[
['userId' => '44444444', 'isVip' => true, 'isOnline' => true, 'followerCount' => 1500,],
['userId' => '66666666', 'isVip' => true, 'isOnline' => true, 'followerCount' => 200, ],
['userId' => '22222222', 'isVip' => false, 'isOnline' => true, 'followerCount' => 50, ],
['userId' => '33333333', 'isVip' => false, 'isOnline' => false, 'followerCount' => 500, ],
['userId' => '55555555', 'isVip' => false, 'isOnline' => false, 'followerCount' => 300, ],
['userId' => '99999999', 'isVip' => false, 'isOnline' => false, 'followerCount' => 150, ],
['userId' => '11111111', 'isVip' => false, 'isOnline' => false, 'followerCount' => 100, ],
['userId' => '77777777', 'isVip' => false, 'isOnline' => false, 'followerCount' => 20, ],
['userId' => '88888888', 'isVip' => false, 'isOnline' => false, 'followerCount' => 10, ],
]
原始資料:
$usersData = [
[
'userId' => '11111111',
'isVip' => false,
'isOnline' => false,
'followerCount' => 100,
],
[
'userId' => '22222222',
'isVip' => false,
'isOnline' => true,
'followerCount' => 50,
],
[
'userId' => '33333333',
'isVip' => false,
'isOnline' => false,
'followerCount' => 500,
],
[
'userId' => '44444444',
'isVip' => true,
'isOnline' => true,
'followerCount' => 1500,
],
[
'userId' => '55555555',
'isVip' => false,
'isOnline' => false,
'followerCount' => 300,
],
[
'userId' => '66666666',
'isVip' => true,
'isOnline' => true,
'followerCount' => 200,
],
[
'userId' => '77777777',
'isVip' => false,
'isOnline' => false,
'followerCount' => 20,
],
[
'userId' => '88888888',
'isVip' => false,
'isOnline' => false,
'followerCount' => 10,
],
[
'userId' => '99999999',
'isVip' => false,
'isOnline' => false,
'followerCount' => 150,
],
)