簡體   English   中英

更新laravel中只有一個鍵的會話值

[英]Update Value of Session of only a single key in laravel

我有如下輸入。

array:4 [  
  "_token" => "evktHCfCNZVQMNYXzntfHZkdNLZFqvOoYgU3yPKy"
  "name" => "Name"
  "orderId" => "5cb5943a6733a1555403834"
  "amount" => null
]

我將其存儲到這樣的會話中:

public function store(Request $request)
{    
    request()->session()->put('bookingInfo', $request->input());

    return redirect()->route('book.checkout');
} 

現在我想更改會話中的amount值。 我將如何實現這一目標?

要更新值,您需要從會話中檢索值並再次更新它。

要做到這一點,你需要做

$booking_info = $request->session()->get('bookingInfo');

然后你會得到一個數組。 像普通數組一樣更新它

$booking_info["amount"] = 10; // anything you wanted

如果您需要再次將其放回會話中,您可以執行此操作

$request->session()->put('bookingInfo', $booking_info);

編輯

如果您希望能夠部分更新,則需要像這樣單獨存儲它。

$input = $request->all();
$request->session()->put('bookingInfo.name', $input['name']);
$request->session()->put('bookingInfo.orderId', $input['orderId']);
$request->session()->put('bookingInfo.amount', $input['amount']);

Laravel 5+ // 通過請求實例...

$request->session()->put('amount', 'value');

// 通過全局助手...

session(['amount' => 'value']);

// 用於檢索

session('amount');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM