サーチ…


備考

Codeigniter Sessionsクラスでは、ブラウザのCookieを使用して、複数のページ読み込みにまたがるデータを保存します。

リファレンス: https : //codeigniter.com/user_guide/libraries/sessions.html

セッションの作成

セッションを初期化するにはコントローラにロードするだけで済みますが、これは通常コントローラの構造体の中に置かれますが、application / config / autoload.phpにある配列にオートロードすることもできます:

$this->load->library('session');

セッションデータの処理

セッションは、単純に次のユーザー情報で構成される配列です。

  1. ユーザーのユニークなセッションID(これは非常に強いエントロピーを持つ統計的にランダムな文字列で、移植性のためにMD5でハッシュされ、5分ごとに再生されます)
  2. ユーザーのIPアドレス
  3. ユーザーのユーザーエージェントデータ(ブラウザのデータ文字列の最初の120文字)
  4. 「最後のアクティビティ」タイムスタンプ。

ソース( セッションデータ


セッションデータを取得するには

SessionIDのような:

$this->session->userdata('session_id');

注 - Codeigniter 3.xでは、上記の構文を使用できますが、 $this->session->session_id使用できる概念または魔法ゲッターが導入されています。

セッション項目が存在しない場合、 userdata()はNULLを返します。

すべてのセッションデータを取得するには

$this->session->all_userdata()

セッションデータを設定する

set_userdata()メソッドを使用すると、セッションにデータを設定できます。次の例は、挿入する配列の例を示しています。

$newdata = array(
        'username'  => 'johndoe',
        'email'     => '[email protected]',
        'logged_in' => TRUE
);

$this->session->set_userdata($newdata);

一度に1つのデータを設定することもできます。たとえば、次のようにします。

$this->session->set_userdata('some_name', 'some_value');

または

$some_name = 'some_value';
$this->session->set_userdata($some_name);

セッションおよびセッションデータを削除するには

$this->session->unset_userdata('some_name')

このメソッドは、設定を解除する項目キーの配列も受け入れます。

Codeiginter 3.xの場合:

$array_items = array('username', 'email');

$this->session->unset_userdata($array_items);

Codeiginter 2.x(この従来の構文は3.xをサポートしていません):

$array_items = array('key' => 'value');

$this->session->unset_userdata($array_items);


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow