【PHP】「$_SESSION」 — セッション変数

【PHP】
「$_SESSION」 — セッション変数




「$_SESSION」とは

現在のスクリプトで使用できるセッション変数を含む連想配列。

セッションは、個々のユーザーデータを格納する仕組みで、個々のユーザーに対して「セッションID」を割り当て、複数ページにまたがって情報を保持することができる。

$HTTP_SESSION_VARSは、同じ情報を格納している。
$HTTP_SESSION_VARSは、これはスーパーグローバルではない。
$HTTP_SESSION_VARSと$_SESSIONは異なる変数で、PHP は異なる変数として扱う。



「$_SESSION」の操作方法

セッションの設定

デフォルトでは、PHP が使う保存ハンドラは「files」 。
ハンドラの設定は、「session.save_handler」で設定。
サーバー上の「session.save_path」で指定した場所にセッションデータを保存。

セッションを手動で開始

session_start() 関数

セッションの自動開始

session.auto_start に 1 を設定している場合は、 リクエスト開始時に自動的にセッションを開始。

セッションの終了

通常は、スクリプト処理を終了するときに、セッションは自動的に終了。
手動でのセッション終了は、「session_write_close()」関数を使用。


セッションの開始

<?php
session_start();
if (!isset($_SESSION['Sample'])) {
$_SESSION['Sample'] = 0;
} else {
$_SESSION['Sample']++;
}
?>

変数を $_SESSION から削除する

<?php
session_start();
unset($_SESSION['Sample']);
?>