導入

導入 – HTTP_Session の導入

概要

このパッケージを使用すると、セッション状態の値やセッションレベルの設定内容へのアクセス、 そして有効期限の管理が可能となります。 標準の PHP セッション処理機構にもとづくもの以外にも、 より高度な機能も提供しています。たとえばデータベースコンテナを使用したり、 アイドル時間や有効期限切れのタイムアウト値を管理したりすることができます。

ちょっとした例

オプションの設定および新規セッションの検出

<?php
HTTP_Session
::setCookieless(false);
HTTP_Session::start('MySessionID');
HTTP_Session::set('variable''テスト文字列');
if (
HTTP_Session::isNew()) {
    echo(
'現在のリクエストで新規セッションが作成されました');
    
$visitors++; // 訪問者数を増やします
}

// ログインに成功したら HTTP_Session::regenerateId(); します
?>

タイムアウト値の設定

<?php
HTTP_Session
::start();
HTTP_Session::setExpire(time() + 60 60); // 有効期限は一時間とします
HTTP_Session::setIdle(time() + 10 60);   // アイドル時間は 10 分までとします

// 期限切れ
if (HTTP_Session::isExpired()) {
    echo(
'セッションの有効期限が切れました!');
    
HTTP_Session::destroy();
}

// アイドル
if (HTTP_Session::isIdle()) {
    echo(
'長時間ほったらかし過ぎました!');
    
HTTP_Session::destroy();
}

HTTP_Session::updateIdle();
?>