Laravel - 从会话数组中获取项目
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel - 从会话数组中获取项目相关的知识,希望对你有一定的参考价值。
我正在制作一个步骤程序,因此我想使用会话。我有一个表单,允许用户填写一些信息,然后输入值将放在一个名为“basic_settins”的会话数组中,像这样
public function saveSettings(Request $request, Product $products)
{
$request->session()->push('basic_settings', $request->input());
return redirect('/themes');
}
但是如何从该数组中获取特定项目并在我的视图中显示它?通过使用这样的东西:输入字段中的{{ Session::get('store_name') }}
。
该视图如下所示:
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-12">
<form method="POST" action="{{ route('saveBasicSettings') }}">
<div class="row">
<div class="col-md-12">
<button class="btn btn-primary mb-3 float-right">Next</button>
</div>
</div>
<div class="card z-depth-2" style="border-radius: 7px;">
<div class="card-body">
<input type="hidden" name="user_id" value="{{ Auth::user()->id }}">
{{ csrf_field() }}
<div class="form-group">
<label for="store_name">Store name</label>
<input type="text" class="form-control" placeholder="Store name" id="store_name" name="store_name" value="{{ Session::get('store_name') }}" required>
</div>
<div class="form-group">
<label for="company name">Company name</label>
<input type="text" class="form-control" placeholder="Company name" id="company_name" name="company_name" value="{{ Session::get('company_name') }}" required>
</div>
<div class="form-group">
<label for="company_tel">Company phonenumber</label>
<input type="text" class="form-control" placeholder="Company Phonenumber" id="company_tel" name="company_tel" value="{{ Session::get('company_tel') }}" required>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
@endsection
当我通过这样做的请求:$data = $request->session()->all();
然后dd($data);
我得到以下结果:
我怎样才能做到这一点?提前致谢!
答案
当你使用push()
时,会创建一个数组,所以你需要做这样的事情:
{{ session('basic_settings.0.company_name') }}
要么:
{{ session('basic_settings')[0]['company_name'] }}
但我建议您使用以下方法保存数据:
{{ session(['basic_settings' => request()->all()]) }}
然后你就可以用以下内容阅读:
{{ session('basic_settings.company_name') }}
以上是关于Laravel - 从会话数组中获取项目的主要内容,如果未能解决你的问题,请参考以下文章