PHP逆引きリファレンス


スポンサーリンク

トップ > PHP逆引きリファレンス > セッション処理

■セッション処理

セッションを利用する

セッションを利用するには、session_strat() 関数を使用しセッションを生成します。
生成されたセッションは、セッションIDをクッキーに埋め込み保持されます。
session_strat() 関数でセッション生成後、他のphpでsession_strat() 関数を使用すると、生成されたセッションを復元します。

<?php

session_start();

?>

セッションを生成後は、セッション変数の代入と参照が可能になります。
セッション変数は、連想配列となり以下のような形式で保存します。

◆書式
$_SESSION[ 変数名 ] = 値;

それでは、セッション変数の代入と値が保持されていることを確認してみましょう。

◆セッション変数へ値を代入します
<?php

session_start();
$_SESSION['aisatsu'] = 'こんにちは';
?>
◆セッション変数に値が保持されていることを確認します
<?php

session_start();
echo $_SESSION['aisatsu'];//こんにちは

?>
[対象]
PHP 5.x

セッションIDを取得する

セッションIDを取得する、session_id() 関数を使用します。
session_id()関数は、セッションIDを取得し、返します。存在しない場合は空文字を返します。

<?php

session_start();
echo "セッションID:" , session_id();

?>
[対象]
PHP 5.x

セッション変数が設定されているか確認する

isset()、empty() 関数を使用して、セッション変数が設定されているか確認することができます。

<?php

session_start();

if( isset( $_SESSION["data1"] ) ) {
 echo 'このセッション変数は、定義されています。';
}

?>
[対象]
PHP 5.x

セッション変数を削除する ( unset() 関数編)

unset() 関数をセッション変数の設定を削除することができます。
以下の例では、セッション変数の $_SESSION["test"] を削除しています。

<?php

session_start();
unset($_SESSION["test"]);

?>
[対象]
PHP 5.x

セッションデータを破棄する

セッションデータを破棄するには、session_destroy() 関数を使用します。
session_destroy() 関数は、セッションに登録されたデータの破棄に成功した場合に TRUE を、
失敗した場合に FALSE を返します。

セッション変数は破棄しませんので、session_destroy() 実行前に $_SESSION = array() で初期化するとよいでしょう。

◆サンプルコード
<?php

session_start();//セッションスタート

$_SESSION["aisatsu"] = 'こんにちは!';//セッション変数を設定

$_SESSION = array();//セッション変数の初期化

session_destroy();//セッション破棄

?>
[対象]
PHP 5.x

セッションデータを保存してセッションを終了する

session_write_close()、session_commit() 関数を使用し、セッションデータを保存してセッションを終了することができます。

◆サンプルコード
<?php

session_start();

$_SESSION['test'] = "abcde";

session_write_close();//セッションデータを保存して終了します。

?>
[対象]
PHP 5.x

キャッシュの有効期限を設定 / 取得する( session_cache_expire() 関数編 )

session_cache_expire() 関数を使用し、キャッシュの有効期限を設定 / 取得することができます。
session_cache_expire() 関数は、引数なしの場合は、現在の設定を表示します。

◆キャッシュ有効期限を100分に設定する
<?php

session_cache_expire(120);
session_start();

?>
◆設定内容を表示する
<?php

echo "設定内容:" , session_cache_expire();

?>
[対象]
PHP 5.x

作成日:2013年07月18日
最終更新日:2013年07月18日

スポンサーリンク

このページの上へ


お問い合わせは、メールにて受け付けております。
メール:masahiro801[at]hotmail.com ※[at]を@に置き換えてください♪

Copyright (C) 2017 elephantech.net. All Rights Reserved.