セッション ライブラリ
Ziu 付属のセッションライブラリです。セッションデータへのアクセスをKVS形式で簡単で直感的に扱う機能を提供します。
設定
セッションライブラリを利用するための設定を行ないます。
設定からデータ取得までの簡単な流れを示します。
単体で利用の設定方法
本セッションライブラリは、単体で使用することができます。
$config = array(
'session' => array(
'cookie_domain' => 'sample.net',
'save_handler' => 'memcache',
'save_path' => 'tcp://localhost:11211',
'name' => 'MYSESSION',
),
);
$ss = new Session($config);
Ziu で利用の設定方法
Ziu での利用では、オートロードファイルで事前に初期化処理を行ないます。
オートロード (スタートロード)
_init/s00_session.php
などのスタートロードファイルを用意し初期化処理を行ないます。
ヘルパー関数 lib()
は常にシングルトンオブジェクトを返します。スタートロードで事前に初期化することで以降のモジュール処理ではセッションライブラリの設定を共有することができます。
lib('session')->config(array(
'session' => array(
'cookie_domain' => 'sample.net',
'save_handler' => 'memcache',
'save_path' => 'tcp://localhost:11211',
'name' => 'MYSESSION',
),
));
設定項目
項目 | 型 | 初期値 | 説明 |
---|---|---|---|
session | array | 注1) | PHPセッションINIの設定をします。注2) |
namespace | string | SSLIB | セッション変数のネームスペースを指定します。注3) |
注1)
session
のライブラリで管理しているPHPセッションINIの初期値は、以下の5つです。
save_handler
=> files,
name
=> SESS,
gc_maxlifetime
=> 1440,
gc_probability
=> 1,
gc_divisor
=> 100,
その他は、PHPセッションINIのデフォルトが利用されます。
注2)
session
に配列で指定する項目は、内部で ini_set('session.<項目>', <値>)
で実行されます。
注3)
本セッションライブラリは、他のセッション変数との競合を避けるため namespace
を利用しています。
ライブラリによるセッションデータは全てこの namespace
配下に保存されます。
例)
$_SESSION['SSLIB']['member/name']
使い方
セッションライブラリでは、KVS形式でデータ操作を行ないます。
保存
データ保存先として指定するキーは、スラッシュ /
を用いたパス指定で行ないます。
lib('session')->set('member/name', '鈴木 拓郎');
取得
キーを指定してデータを取得します。
lib('session')->get('member/name'); // 鈴木 拓郎
メソッドリファレンス
セッションライブラリのメソッドリファレンスです。
設定メソッド
config(array $config)
セッションライブラリの初期設定をします。
戻り値
型 : object Session
引数値
項目 | 型 | 内容 |
---|---|---|
$config | array | 設定を配列で指定 |
$config
に指定する設定項目については、設定を参照して下さい。
例) lib('session')->config(array('name' => 'MY_SESSION'));
保存/取得メソッド
set($key, $value)
セッションへデータを保存します。
戻り値
型 : void
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 保存キー名 |
$value | mixed | 保存データ |
例) $ss->set('member/name', '鈴木 拓郎');
get($key)
セッションからデータを取得します。
戻り値
型 : mixed
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 保存キー名 |
例) $ss->get('member/name');