Как CodeIgniter сохраняет данные сеанса даже при закрытии браузера?

Интересно, как работает сессия в CodeIgniter. Разве сеанс не считается автоматически отключенным при закрытии браузера? CodeIgniter не разрушает сеанс в браузере по умолчанию:

$config['sess_expire_on_close'] = FALSE; 

Вместо этого мы можем установить время истечения сеанса:

 $config['sess_expiration'] = 7200; 

Теперь, например, если я установил время истечения в 0, он будет поддерживать сеанс до тех пор, пока я сам не уничтожу:

 $this->session->sess_destroy(); 

Итак, как CodeIgniter хранит информацию о сеансе в определенное время, даже после закрытия браузера?

Кроме того, безопасно ли использовать этот параметр по умолчанию (не истекающий сеанс с закрытием браузера), чтобы поддерживать логин пользователя в течение нескольких дней? (например, хранить в сеансе 'logged_in' => TRUE )

Сеанс в CodeIgniter не использует PHP $_SESSION по умолчанию. Он использует собственную реализацию с куки-файлами. Вот почему он не уничтожается при закрытии браузера. Вы также можете использовать сеанс с базой данных в CodeIgniter с опцией $config['sess_use_database'] = TRUE; и другие вещи, которые вы найдете здесь: http://codeigniter.com/user_guide/libraries/sessions.html