如何从会话中获取以特定键开头的所有值

时间:2018-10-31 09:24:26

标签: php laravel session

作为标题,我想从会话中获取以特定值开头的所有值。

例如,我要在项目中计算帖子浏览量,并将其存储在会话中。然后,我想在会话中获取所有存储的查看值。

Session::put("views.".$post->id);

如何获取所有存储的视图?

有什么办法可以像下面这样吗?

Session::get("views.*");

2 个答案:

答案 0 :(得分:1)

您可以使用集合的过滤方法,如下所示:

$session = collect(session()->all())->filter(function($value){
        if (!is_string($value))
            return false;
        return strpos($value, 'views.') === 0;
    })->all();

答案 1 :(得分:0)

当我们使用“。”时,我才意识到。 (点)当我们分开键时,laravel将它们放在不同的数组中(我的意思是创建多维数组),因此我能够仅使用父键来获得所有值。

Session::get("views");