簡體   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