我正在尝试设置/配置会话,并希望根据我的配置将用户redis或文件作为会话保存处理程序。
我的代码如下:
$options = [
'gc_maxlifetime' => 14 * 24 * 60 * 60,
'name' => 'MySession',
'cookie_lifetime' => 14 * 24 * 60 * 60,
]
$sessionStorage = new NativeSessionStorage($options);
if ($config['session']['storage'] == 'redis') {
// client in my case predis
$client = new MyClient();
$sessionStorage->setSaveHandler(new RedisSessionHandler($client));
} else {
// I added the else statement because I dont know what happens if a session handler
// is not provided, if there is a default behaviour.
$fileSaveHandler = new NativeFileSessionHandler($docRoot . '/temp/sessions');
$sessionStorage->setSaveHandler($fileSaveHandler);
}
$session = new Session($sessionStorage);
$session->start();
几个问题:
如果我不想使用Redis会话处理程序或有默认设置,是否需要设置NativeFileSessionHandler?
我可以删除framework.yml会话部分并用我的代码初始化该会话吗?
在什么地方初始化我的会话,以便我的应用程序可以使用它?