我试图从Session中删除数组项。我按照以下方式展示了数组元素:
<?php $i=1; ?>
@foreach(Session::get('product') as $row)
<tr>
<td>
<img src="{{asset('files/'.$row->thumbnil)}}" class="img-thumbnail" alt="" width="90px">
</td>
<td>{{$row->name}}</td>
<td>
<a href="{{asset('deleteEnquote/'.$row->id)}}">
<button class="btn btn-danger btn-sm"><i class="fa fa-remove"></i></button>
</a>
</td>
</tr>
<?php $i++; ?>
@endforeach
这就是我试图删除关键元素的方式:
public function deleteEnquote($id)
{
$remove = Product::where('id',$id)->first();
if(Session::has('product')){
foreach (Session::get('product') as $key => $value) {
if($value === $remove){
Session::pull('product.'.$key); // retrieving pen and removing
break;
}
}
}
return redirect('enquote');
}
但问题是我无法从未删除的Array.Means元素中删除相应的元素。如何从Session Array中删除特定元素?
答案 0 :(得分:0)
你需要做这样的事情:
<div class="container" id="RappelPres" style="
width: 400px;
height: 200px;
position: absolute;
top: 280px;
left: 500px;
border: 1px #a5a3a2 solid;">
<div style="background-color: #42b43b;width:100%;height:40px;position: absolute ;left:0px">
<form method="POST" action="{{ url('new') }}" style="text-align:center;" role="form" id="frm" >
{{ csrf_field()}}
<button class="btn" id="confirm" type="submit" style="background-color:#42b43b;color: white;width:100%;height:100% "></button>
</form>
</div>
<br>
<br>
<hr>
<div class="container" style="width:98%">
<div class="alert alert-success alert-dismissible hidden">
Pésence marqué avec succès.
</div>
</div>
<div class="alert alert-danger alert-dismissible hidden" role="alert" style="width:98%">
</div>
</div>
功能删除该密钥。将更新的数组再次设置为具有相同键的会话。
unset
答案 1 :(得分:0)
如果产品是您的会话数组,请使用以下代码:
if(Session::has('product')){
foreach (Session::get('product') as $key => $value) {
if($value === $remove){
session()->forget('product.'.$key)
break;
}
}
}