GcFrontend\Module::initSession PHP Метод

initSession() публичный Метод

Initialize Session data
public initSession ( Zend\ServiceManager\ServiceManager $serviceManager, Zend\Db\Adapter\Adapter $dbAdapter ) : void
$serviceManager Zend\ServiceManager\ServiceManager Service manager
$dbAdapter Zend\Db\Adapter\Adapter Database adapter
Результат void
    public function initSession(ServiceManager $serviceManager, DbAdapter $dbAdapter)
    {
        $coreConfig = $serviceManager->get('CoreConfig');
        $sessionConfig = new SessionConfig();
        $sessionConfig->setStorageOption('gc_probability', 1);
        $sessionConfig->setStorageOption('gc_divisor', 100);
        $sessionConfig->setStorageOption('save_path', $coreConfig->getValue('session_path'));
        $sessionConfig->setStorageOption('gc_maxlifetime', $coreConfig->getValue('session_lifetime'));
        $sessionConfig->setStorageOption('cookie_path', $coreConfig->getValue('cookie_path'));
        $sessionConfig->setStorageOption('cookie_domain', $coreConfig->getValue('cookie_domain'));
        $sessionManager = new SessionManager($sessionConfig);
        SessionContainer::setDefaultManager($sessionManager);
        if ($coreConfig->getValue('session_handler') == CoreConfig::SESSION_DATABASE) {
            $tablegatewayConfig = new DbTableGatewayOptions(array('idColumn' => 'id', 'nameColumn' => 'name', 'modifiedColumn' => 'updated_at', 'lifetimeColumn' => 'lifetime', 'dataColumn' => 'data'));
            $sessionTable = new SessionTableGateway(new TableGateway('core_session', $dbAdapter), $tablegatewayConfig);
            $sessionManager->setSaveHandler($sessionTable);
        }
        $sessionManager->start();
    }