1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
/** -----------------------------------------------------------------------------------
 *   セッションとクッキー関数:セッション終了のsession_write_closeとセッション管理の例
 *    session_commit()関数は、session_write_close()関数のエリアス
 *  2015.08.25 作成 yoshi of CXMedia Inc.
 * ------------------------------------------------------------------------------------ */
// セッション開始
session_start();
// セッション開始後にheader関数(plain)を実行
header("Content-type:text/plain; charset=UTF-8");

// 訪問回数の判断
if ( !isset($_SESSION["visited"]) ){
    
// セッションデータの破棄
    
$_SESSION = array();
    
// 初回の訪問のセット
    
$_SESSION["visited"]  = 1;
} else {
    
// 次回以降の訪問回数のカウントアップ
    
$_SESSION["visited"]++;
}
// 訪問日、時刻のセット
$_SESSION["upd_date"] = date('Y-m-d H:i:s');
// セッションIDと訪問日の表示
echo "■session-id(session_id取得)→".session_id()."\n";
echo 
"■訪問日→".$_SESSION["upd_date"]."\n";
echo 
"訪問回数:",$_SESSION["visited"],"\n";

echo 
"■セッションデータ一覧","\n";
print_r($_SESSION);

// セッション終了前に、セッションデータの保存例
$_SESSION['before'] = 'セッション終了前の保存データ';

// セッション終了
session_write_close();
echo 
"==セッション終了==";

// セッション終了後に、セッションデータの保存ができない(チェック!)
$_SESSION['after'] = 'セッション終了後の保存データあるか?';
?>