gpt4 book ai didi

php - 在 Blade - Laravel 中使用 session 数据

转载 作者:行者123 更新时间:2023-12-04 21:56:19 27 4
gpt4 key购买 nike

我在我的 Controller 中创建了一个新 session ,并用我的数据库中的一些数据填充了它。

那是 Controller 代码:

public function index(Request $request) {
$products = Products::with('categories')->get()->take(5);
$request->session()->put('session_products', $products);
return view('shoppingcard.card');
}

在下一个 Controller 函数中,我检索 session 数据。
public function receiver(Request $request) {
if($request->session()->has('session_products')) {
echo $request->session()->get('session_products');
}
else return "stop no session";

return view('shoppingcard.endview');
}

现在如果我做一个: return $request->session()->get('session_products');我得到了我需要的一切。

这是 session 内容的虚拟数据:
{"id":5,"title":"Beautiful Unicorn","price":"20.00","sale_price":"15.00","status":"active","created_at":null,"updated_at":null,}

现在我在 endview Blade 中并想输出数据。

如何输出像“标题”这样的特定数据?

最佳答案

该数据被序列化到 session 并反序列化回对象。您所需要做的就是完全按照通常的方式使用该信息:

public function receiver(Request $request) {
if(! $request->session()->has('session_products')) {
return "stop no session";
}

return view('shoppingcard.endview')
->with('title', $request->session()->get('session_products')[0]['title']);
}

或者您可以将其全部传递给您的 View :
public function receiver(Request $request) {
if(! $request->session()->has('session_products')) {
return "stop no session";
}

return view('shoppingcard.endview')
->with('products', $request->session()->get('session_products'));
}

并在 View 中使用它:
@foreach($products as $product)
{{ $product['title'] }}
@endforeach

关于php - 在 Blade - Laravel 中使用 session 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41444790/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com