purazumakoiの[はてなブログ]

技術メモから最近はライフログも増えてきてます。

SESSION(セッション)について

セッションって何?っていうのが実はあんまりわかってなかったので


使い方はまぁいいとして、問題は消し方!
こういった値を保持しておくというのは色々を気を使いますね。


ということでセッションを破棄する!というテーマで調べる。まずはマニュアルみましょう。


参照:session_destroy - PHPプロ!マニュアル


内容はこんなの↓

<?php

// セッションの初期化
// session_name("something")を使用している場合は特にこれを忘れないように!
session_start();

// セッション変数を全て解除する
$_SESSION = array();

// セッションを切断するにはセッションクッキーも削除する。
// Note: セッション情報だけでなくセッションを破壊する。
if (isset($_COOKIE[session_name()])) {
    setcookie(session_name(), '', time()-42000, '/');
}

// 最終的に、セッションを破壊する
session_destroy();

?>


肝心なのは
$_SESSION = array();
session_destroy();


のコンボっぽいです。これでセッションを破棄できるみたい。

$_SESSION = array();でブラウザ内で持っているパラメタを消して、
session_destroy();でサーバ内の/tmpとかに保存されてる実ファイルを消すといったイメージだろうか


ちなみに

注意: $_SESSION を使っていない古いコードでのみ session_unset() を使用すること。


とあるけど、普通セッション使う時は $_SESSION使うから、
session_unset()は基本的にはもう使わないって考えていいだろうか。


リンク:
日曜プログラミング講座/PHP言語 - WEB要素編 - Water-Sunlight