Upgrade Sessions
Documentations
What has been changed
- Only small things like the method names and the loading of the library have changed. 
- The definition of the session table in Database Driver has changed. 
Upgrade Guide
- Wherever you use the Session Library replace - $this->load->library('session');with- $session = session();.
- From that on you have to replace every line starting with - $this->sessionwith- $sessionfollowed by the new method name.- To access session data use the syntax - $session->itemor- $session->get('item')instead of the CI3 syntax- $this->session->name.
- To set data use - $session->set($array);instead of- $this->session->set_userdata($array);.
- To remove data use - unset($_SESSION['some_name']);or- $session->remove('some_name');instead of- $this->session->unset_userdata('some_name');.
- To mark session data as flashdata, which will only be available for the next request, use - $session->markAsFlashdata('item');instead of- $this->session->mark_as_flash('item');`
 
- If you use Database Driver, you need to recreate the session table. See DatabaseHandler Driver. 
Code Example
CodeIgniter Version 3.x
<?php
$this->load->library('session');
$_SESSION['item'];
$this->session->item;
$this->session->userdata('item');
CodeIgniter Version 4.x
<?php
$session = session();
$_SESSION['item'];  // But we do not recommend to use superglobal directly.
$session->get('item');
$session->item;
session('item');