繁体   English   中英

我应该在Laravel 5.7中更好地使用session()或collect()辅助函数吗?

[英]Should I better use session() or collect() helper function in Laravel 5.7?

我将我的数组数据存储在会话中,如下所示。

session(['my_key' => ['car' => 123, 'motor' => 45, 'boat' => 678]]);

要获取密钥,我可以执行以下操作:

$car_key = session('my_key.car');
$motor_key = session('my_key.motor');
$boat_key = session('my_key.boat');

或者我可以执行以下操作:

$my_keys = session('my_key');

$car_key = collect($my_keys)->get('car');
$motor_key = collect($my_keys)->get('motor');
$boat_key = collect($my_keys)->get('boat');

我不知道session()collect()->get()函数如何处理array 在这种情况下,一种方法是否比另一种更好? 还是没关系,甚至会话都可以存储具有大数据的数组?

collect() helper用于创建一个集合。 第二种方法是创建三个不同的集合,其中包含相同的集合数据。 然后,通过每个集合的键获取数据。 该冷汁似乎是多余的,没有被使用,应该使用。

使用session()助手

这取决于。

如果要使用仅在集合上可用的方法,那么这将是一种完全有效的方法。 一个更简单的方法是使用:

$myCollection = collect(session('my_key'));

这样,您可以只使用$myCollection->get('car')等,而不用创建多个集合。

但是,如果您只想检索该值并对数组满意,则可以使用session()帮助器并正常返回数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM