antonkalmykov / session-muscle
ITCourses Jazz 框架的会话提供组件
Requires
- php: >=5.5.9
This package is not auto-updated.
Last update: 2024-09-14 19:47:30 UTC
README
ITCourses Jazz 框架的会话提供组件
如何使用
每当有请求发送到服务器时,SessionMuscle 将自动启动会话。要修改或保存当前的会话数据,请使用 SessionMuscle API 方法。会话类型包括长期会话或短期会话。默认情况下,所有会话都是短期的。会话的持续时间可以在会话设置中指定。根据会话类型,会话实质上将根据 short 或 long 后缀结束。例如
63073ae80b786fdc21bb7616a54d25615e6c8f28short - 短期会话的名称
或 27s45ae80b987fsc22bs4576v54d25615w6c8f28long - 长期会话的名称
垃圾收集器将根据 'runRate' 会话设置和会话生命周期类型自动启动。
注意:会话仓库必须具有读写权限。
首先,创建 SessionMuscle 组件的设置数组
// settings array $settings = [ // cookie name which will store the session id 'cookieName' => 'sess', // session entity to record logs 'sessLogName' => '.sesslog', // session repository in this case be folder, // generally it can be any 'repository' => 'storage/sessions', // through a gap to run the garbage collector 'runRate' => 10, // short session lifetime in seconds 'short' => 60, // long session lifetime in seconds 'long' => 120 ];
然后,创建一个适配器,该适配器将负责维护会话(在本例中,这是将会话存储到文件的适配器)
use SessionMuscle\Adapters\FileAdapter; $adapter = new FileAdapter();
现在您可以创建会话实例,第一个参数是会话适配器实例,第二个参数是会话设置
use SessionMuscle\Session; $session = new Session($adapter, $settings);
SessionMuscle API
从会话中检索所有数据
$session->all(); // return array of session data
从会话中检索一个值。您还可以将默认值作为此方法的第二个参数传递。如果指定的键在会话中不存在,则返回此默认值
$session->get($key, $default = ''); // return session data or default value
向当前会话添加新数据
$session->put($key, $value); // return true on success
检查会话中是否存在项
$session->has($key); // return true if key exists or false if no
从会话中检索一个值,然后删除它。您还可以将默认值作为此方法的第二个参数传递。如果指定的键在会话中不存在,则返回此默认值
$session->pull($key, $default = ''); // return session data or default value.
通过给定键从会话中删除数据
$session->delete($key, $default = ''); // true on successful removal or false if no
要获取当前会话 ID 和会话类型(如果存在),请使用
$session->getSessID(); // current session ID with session type
要获取当前仓库,请使用
$session->getRepository();
要获取当前会话 cookie 名称,请使用
$session->getCookieName();
要获取使用的会话类型,请使用
$session->getSessionTypes(); // return array of session types
要获取当前会话类型,请使用
$session->getSessionType(); // return current session type
要设置当前会话类型,请使用
$session->setSessionType($sessionType);
要获取当前会话设置,请使用
$session->getSessionSettings(); // return current session settings array
要保存当前会话,请使用
$session->save();
要重新生成当前会话,请使用
$session->regenerate();
要完全删除当前会话,请使用
$session->clear();