Laravel跨页面展示勾选值:$_SESSION使用方法及相关文档咨询
Laravel 跨页面展示勾选值方案及Session使用指南
一、直接实现跨页面展示勾选值
你不需要用原生$_SESSION,Laravel封装了更安全易用的Session操作,完全能满足跨页面暂存勾选值的需求,步骤如下:
- 存储勾选值到Session
在处理表单提交的控制器方法里,把前端传过来的勾选值存进Session:
// 假设表单里勾选值的字段名是selected_items,默认返回空数组防止报错 $selectedItems = request()->input('selected_items', []); // 持久化存储(直到主动移除或Session过期) session()->put('selected_items', $selectedItems); // 如果只需要临时保留到下一次请求,用flash方法: // session()->flash('selected_items', $selectedItems);
- 在目标页面读取并展示
在需要展示勾选值的页面(视图或控制器)中读取Session数据:
// 读取数据,不存在则返回空数组 $selectedItems = session()->get('selected_items', []);
在Blade视图里遍历展示:
<h3>已勾选的内容:</h3> @foreach($selectedItems as $item) <div>{{ $item }}</div> @endforeach
二、Laravel Session核心用法(替代文档参考)
Laravel的Session操作比原生$_SESSION更规范安全,核心操作如下:
- 存储数据:
session()->put('键名', '值');或Session::put('键名', '值');(需引入Illuminate\Support\Facades\Session门面) - 获取数据:
session()->get('键名', '默认值');,默认值可避免键不存在时报错 - 临时存储:
session()->flash('键名', '值');,数据仅保留到下一次HTTP请求 - 移除指定数据:
session()->forget('键名'); - 清空所有Session:
session()->flush(); - 检查键是否存在:
session()->has('键名');
注意:确保你的路由使用了web中间件组(Laravel默认web路由已包含),该中间件组自动启用Session功能。
内容的提问来源于stack exchange,提问作者John Lyons
相关产品推荐
相关产品推荐

