PHPのセッションの管理方法に関する備忘録。

ブラウザのCookie内のセッションID(デフォルトはPHPSESSID)はサーバーサイドでもそのまま利用され、ハッシュ化等の加工はされません。

また、session.save_handlerが”files”の場合は、session.save_path以下にファイルが保存されます。セッションファイルからデコードする場合は以下のコードを実行すればOKです。

以下のコードでセッションデータを格納してセッションファイルの形式を見てみます。

  • session.serialize_handler = php

文字列はs、数値はi、浮動小数点数はd、論理値はb、NULLはNとなっておりセミコロン区切りで定義されているのがわかります。デフォルトだとこの形式で処理されます。

  • session.serialize_handler = php_binary

0x04 (EOT)や0x03 (ETX)がキーバリュー間に挟み込まれています。それ以外は”php”とほぼ同じ。

  • session.serialize_handler = php_serialize

“php”と似ていますが、キーに関しても属性値(データ型、バイト数)を記載しているのが特徴です。

  • session.serialize_handler = wddx

XML形式でのシリアライズになります。

参考URL