laravel:使用session(10.27.0)
一,相关文档:
https://learnku.com/docs/laravel/10.x/session/14855
二,配置session
文件:config/session.php
'driver' => env('SESSION_DRIVER', 'file'), //session驱动,默认为flie驱动
'lifetime' => env('SESSION_LIFETIME', 120), //生命周期,默认为120分钟
'expire_on_close' => false, //关闭浏览器是否自动删除session
'encrypt' => false, //存储的session数据是否需要加密
'files' => storage_path('framework/sessions'), //file驱动保存路径,默认为storage/framework/sessions/下
'connection' => env('SESSION_CONNECTION', null), //如果使用数据库驱动或者redis驱动时,连库管理session
'table' => 'sessions', //使用数据库驱动时,创建的session表名
'store' => env('SESSION_STORE', null), //使用apc 或者memcached驱动的配置
'lottery' => [2, 100], //清除旧session
'cookie' => env( //cookie名称
'SESSION_COOKIE',
Str::slug(env('APP_NAME', 'laravel'), '_').'_session'
),
'path' => '/', //cookie
'domain' => env('SESSION_DOMAIN', null),
'secure' => env('SESSION_SECURE_COOKIE', false),
'http_only' => true, //将此值设置为true将阻止JavaScript访问cookie的值
'same_site' => null,
三,php代码
controller中方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
/* *获取session */ public function sessionget(Request $request ) { //全部数据 $data = $request ->session()->all(); var_dump( $data ); if ( $request ->session()->has( 'name' )) { $name = $request ->session()->get( 'name' ); echo "<br/>name:" . $name . "<br/>" ; } else { echo "<br/>name不存在于会话中<br/>" ; } if ( $request ->session()->has( 'age' )) { //用全局帮助方法 session $age = session( 'age' ); echo "<br/>age:" . $age . "<br/>" ; } else { echo "<br/>age不存在于会话中<br/>" ; } } /* *设置session */ public function sessionset(Request $request ) { $request ->session()->put( 'name' , '老刘' ); //用助手方法设置 session([ 'age' => '88' ]); //查看全部 $data = $request ->session()->all(); var_dump( $data ); } /* *删除session */ public function sessiondel(Request $request ) { //移称指定的 $request ->session()->forget( 'name' ); //查看效果 $data = $request ->session()->all(); var_dump( $data ); //移除全部 $request ->session()-> flush (); //查看效果 $data = $request ->session()->all(); var_dump( $data ); } |
说明:刘宏缔的架构森林—专注it技术的博客,
网站:https://blog.imgtouch.com
原文: https://blog.imgtouch.com/index.php/2023/11/01/laravel-shi-yong-session-10-27/
代码: https://github.com/liuhongdi/ 或 https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: 371125307@qq.com
四,测试效果:
五,查看laravel框架的版本:
liuhongdi@lhdpc:/data/laravel/dignews$ php artisan --version
Laravel Framework 10.27.0