为了账号安全,请及时绑定邮箱和手机立即绑定

laravel排序数组最后5个唯一和反向

laravel排序数组最后5个唯一和反向

PHP
慕莱坞森 2024-01-19 17:22:49
我有一个id数组,我想将这些id过滤到最后5 个和唯一的 ids。$recently_viewed_ids     array:16 [▼      0 => 1      1 => 2      2 => 1      3 => 2      4 => 8      5 => 7      6 => 6      7 => 6      8 => 6      9 => 5      10 => 8      11 => 4      12 => 1      13 => 1      14 => 1      15 => 1    ]这是我的代码,它很混乱,因为我得到了 85672$items = array_slice(array_unique(array_reverse($recently_viewed_ids)), -5);我期待的输出14856
查看完整描述

3 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

您需要使用数组函数的下一个组合:


array_slice( // get first 5 values

    array_unique( // get only unique values

       array_reverse($arr) //reverse array for get last values

    )

,0,5);


查看完整回答
反对 回复 2024-01-19
?
一只名叫tom的猫

TA贡献1906条经验 获得超2个赞

在 Laravel 中,我相信你可以将正确答案重写为:

return collect($arr)
    ->reverse()
    ->unique()
    ->slice(0, 5)
    ->all();


查看完整回答
反对 回复 2024-01-19
?
ITMISS

TA贡献1871条经验 获得超8个赞

尝试这个 :

$items = array_slice(array_unique(array_reverse($recently_viewed_ids)), 5);


查看完整回答
反对 回复 2024-01-19
  • 3 回答
  • 0 关注
  • 27 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信