アップグレードセッション
ドキュメント
変更点
メソッド名やライブラリの読み込み方法など、小さな変更のみが行われています。
データベースドライバにおけるセッションテーブルの定義が変更されました。
アップグレードガイド
セッションライブラリを使用している場合は、
$this->load->library('session');
を$session = session();
に置き換えてください。その後、
$this->session
で始まるすべての行を、$session
と新しいメソッド名に置き換える必要があります。セッションデータにアクセスするには、CI3 構文の
$this->session->name
の代わりに、$session->item
または$session->get('item')
構文を使用します。データをセットするには、
$this->session->set_userdata($array);
の代わりに、$session->set($array);
を使用します。データを削除するには、
$this->session->unset_userdata('some_name');
の代わりに、unset($_SESSION['some_name']);
または$session->remove('some_name');
を使用します。セッションデータを、次のリクエストでのみ使用可能なフラッシュデータとしてマークするには、
$this->session->mark_as_flash('item');`
の代わりに$session->markAsFlashdata('item');
を使用します。
データベースドライバを使用している場合は、セッションテーブルを再作成する必要があります。DatabaseHandler ドライバ を参照してください。
コード例
CodeIgniter バージョン 3.x
<?php
$this->load->library('session');
$_SESSION['item'];
$this->session->item;
$this->session->userdata('item');
CodeIgniter バージョン 4.x
<?php
$session = session();
$_SESSION['item']; // But we do not recommend to use superglobal directly.
$session->get('item');
$session->item;
session('item');