feeh27 / session-encoder-decoder
PSR-7 Session 支持
1.0.1
2019-10-26 19:16 UTC
Requires
- php: ^7.2
Requires (Dev)
- phpunit/phpunit: ^8.4
This package is auto-updated.
Last update: 2024-08-27 06:18:02 UTC
README
这个库允许编码和解码PHP会话数据。
要求
- PHP 7.2 或更高版本
- Composer
安装
建议通过 composer 安装
composer require feeh27/session-encoder-decoder
为什么使用这个库?
PHP原生的编码和解码会话功能存在一些限制,例如
-
session_encode()(编码)- 如果没有活跃的会话,则无法使用
- 仅编码全局会话变量
$_SESSION中的数据 - 不接受解码数据时的参数
-
session_decode()(解码)- 如果没有活跃的会话,则无法使用
- 不是返回解码后的值(数组),而是直接保存到全局会话变量
$_SESSION中
使用该库
创建库的新实例
$session = new SessionEncoderDecoder\PSR7Session();
编码
$decodedData = [ 'user_id' => '389', 'profile_id' => 27, ]; $encodedData = $session->encode($decodedData); echo $encodedData; // 'user_id|s:3:"389";profile_id|i:27;'
解码
$encodedData = 'user_id|s:3:"389";profile_id|i:27;'; $decodedData = $session->encode($encodedData); print_r($decodedData); // Array // ( // [user_id] => 389 // [profile_id] => 27 // )
源代码
这个库基于 psr7-sessions/session-encode-decode 库,并且似乎已经停止维护。
我对所有类进行了多次修改,以更好地适应我的场景,并相信其他人也会觉得它很有用。
该仓库的贡献者
Felipe Dominguesche - Linkedin