skillup

技術ブログ

サーバー・ネットワーク

データのシリアライズ

投稿日:

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

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

普通の文字や変数なんかはダイレクトに入れてあげればいいのですが、オブジェクトなどはダイレクトにセッションにいれても取り出せません。

その場合、シリアライズという処理が必要になってきます。

http://qiita.com/shin1x1/items/6799512ac41fdf693ad4

http://piyopiyocs.blog115.fc2.com/blog-entry-269.html

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

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

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

http://d.hatena.ne.jp/deeeki/20081011/objectserialize

-サーバー・ネットワーク
-, ,

執筆者:


comment

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

関連記事

no image

ファイル抽出系のシェルスクリプト(主にfind系)

実務であるアプリのログをまとめるスクリプトを書きました。 log1.log log2.log log3.log ・・・・ みたいにローテーションして吐かれていくのですが、量が多いので1日分をまとめるこ …

no image

障害調査フロー

実務でサーバーの障害が発生した時のフローなどをメモしおこうかと。 行ってしまうと「ログに始まり、ログにおわる」といった感じでしょうか。 サーバーエンジニアの方の作業をみてたんですが、基本的にはプログラ …

no image

Dockerfileでのコンテナ作成

dockerは通常はimageを取得し、コンテナを起動した後、自分独自にライブラリなどをインストールし、出来たものをcommitしますが、Dockerfileをつかえばこの一連の操作をファイルに記録し …

no image

Mailtrap テスト環境でメール送信を試したい時に使えるサービス

メールが絡んだ時のテストって難しいですよね・・・ ここだけは本番化した時に、1、2度お客さんに連絡して仕方なく本番でテスト・・・なんてことをやっておりましたが、つい最近、メールのテストが気軽にできるサ …

no image

wordpressでのnginx設定

ここ1年、apacheではなく、nginxでサービスを作ることが多いため、設定にだいぶ慣れてきました。 今回はwordpressの設定です。 バーチャルホストでsample.comとアクセスをするとw …