From 7b1767ab5fe4d28dc25394fb8bd5fa9e40fdd12e Mon Sep 17 00:00:00 2001 From: whwyy Date: Wed, 17 Dec 2025 21:12:25 +0800 Subject: [PATCH] eee --- README.md | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/README.md b/README.md index 411278c..d660ed4 100644 --- a/README.md +++ b/README.md @@ -1 +1,81 @@ # kiri-router + +## Session 使用说明 + +### 基本用法 + +```php +use Kiri\Router\Session; + +// 存储 Session 数据 +Session::put('user_id', 123); +Session::put('username', 'admin'); + +// 或者批量设置 +Session::put(['user_id' => 123, 'username' => 'admin']); + +// 获取 Session 数据 +$userId = Session::get('user_id'); +$username = Session::get('username', 'guest'); // 带默认值 + +// 获取所有 Session 数据 +$all = Session::get(); // 或 Session::all() + +// 检查 Session 中是否存在指定键 +if (Session::has('user_id')) { + // ... +} + +// 删除 Session 数据 +Session::forget('user_id'); + +// 清空所有 Session 数据 +Session::flush(); + +// 销毁 Session(包括文件) +Session::destroy(); + +// 重新生成 Session ID +Session::regenerate(); +``` + +### 使用中间件自动管理 Session + +在配置文件中添加 SessionMiddleware 到中间件列表: + +```php +// config/request.php +return [ + 'middlewares' => [ + \Kiri\Router\Base\SessionMiddleware::class, + // 其他中间件... + ], +]; +``` + +或者使用注解在控制器方法上: + +```php +use Kiri\Router\Annotate\Middleware; +use Kiri\Router\Base\SessionMiddleware; + +class UserController +{ + #[Middleware(SessionMiddleware::class)] + public function login() + { + Session::put('user_id', 123); + return response()->json(['success' => true]); + } +} +``` + +### 配置 Session + +```php +// 初始化 Session(可选,有默认值) +Session::init( + savePath: storage(null, 'session'), // Session 存储路径 + lifetime: 7200 // Session 生命周期(秒),默认2小时 +); +``` \ No newline at end of file