セッションの永続化 --
この例では、複数のブラウザ間で "セッションクッキー"
を使用してセッションを永続化させる方法を示します
解説
セッションを作成したら、それを参照するためにセッション ID を使用することになります。
セッション ID は、一般的にはクッキーに保存したり URI に含めたりします。
ブラウザを新たに立ち上げた際にセッション ID を覚えておけるようにするには、
クッキー方式がお勧めです。
クッキーの有効期限を延長する
(標準では、ブラウザを閉じた時点で期限切れとなります)
ために、PHP の
session_set_cookie_params()
を使用します。
例
例 48-1session_set_cookie_params の使用法 require_once 'HTTP/Session2.php';
/**
* クッキーパラメータの設定
*/
session_set_cookie_params(60*60*24, // 有効期限は 24 時間
'/', // パス
'.example.org', // ドメイン
false, // "secure only"
true); // http のみ
HTTP_Session2::useCookies(true);
HTTP_Session2::start('s');
HTTP_Session2::setExpire(time() + 60*60*24); // 有効期限を 24 時間とします
HTTP_Session2::setIdle(time() + 60*60); // アイドル時間を 1 時間とします
if (HTTP_Session2::isExpired()) {
HTTP_Session2::destroy();
}
if (HTTP_Session2::isIdle()) {
HTTP_Session2::destroy();
}
HTTP_Session2::updateIdle(); |
|