skillup

技術ブログ

サーバー・ネットワーク プログラミング全般

データのシリアライズ

投稿日:2017年4月20日 更新日:

おととしにJavaをやったときにでてきましたがSessionに情報を格納するときにでてきたシリアライズについて。

セッションはステートフルな状態を実現するための便利なデータの保存方法ですが、値をオブジェクトで入れたいときには工夫が必要です。

普通の文字や変数なんかはダイレクトに入れてあげればいいのですが、一時的な情報の場合、検索やキー的な使い方をする必要もないので配列的なデータをまとめて保存する必要があり、その場合、シリアライズという処理が必要になってきます。

PHP セッションのシリアライズ方式と他言語からの読み取り

PHP、セッション経由でオブジェクトを受け渡しする方法

ECCUBEやってたときにこんな処理やったなー。当時としては訳も分からずやってましたっけ・・・

考え方として近いのがjson形式にして保存する方法でしょうか。保存するときにjson_encodeを使って文字列にして、SESSIONに格納し、出力するときにjson_decodeで復元するとやればそのまま取り出せます。

JavaScriptなどと連携するときにも楽です。※注意点としては連想配列をjson_decodeで復元するときは第2引数にtrueを入れないと反応しません。

-サーバー・ネットワーク, プログラミング全般
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

HTTPヘッダ・インジェクション+オープンリダイレクタ

Contents1 HTTPヘッダ・インジェクションとは?1.1 被害(ほぼクロスサイト・スクリプティング攻撃による脅威と同じ脅威)1.2 対策2 オープンリダイレクタとは?2.1 対策 HTTPヘッ …

no image

clamAV

ウイルスソフトclamAVのインストールと使用法について Contents1 インストール1.1 CentOS61.2 CentOS72 スキャン実行の設定に関して インストール CentOS6 [c …

no image

nginxでの設定について

何回かやったnginxの設定について。 特にサブディレクトリなどに設定したいなどの時に悩みますね・・・ Contents1 locationディレクティブ2 try_filesディレクティブ3 fas …

no image

ユーザーに見せるエラーメッセージに関する考察

プログラムで難しいことの3つは テスト ログ エラーハンドリング とかいてきましたが、ユーザー側に見せるエラーメッセージについて考察して見ました。 Contents1 ログとエラーメッセージの違い2 …

no image

読みやすいコードについて

コードリーディングにおいて聖典となっているリーダブルコードについて読んでいこうかと。 ただ読んでいくだけではつまらないので、自分なりの考え方も書いていきます。 Contents1 優れたコードの定義1 …