skillup

技術ブログ

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

データのシリアライズ

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

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

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

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

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

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

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

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

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

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

執筆者:


comment

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

関連記事

no image

duコマンドについて

ディスク容量を計るコマンドduについて。 ポツポツ使ってきましたが整理していなかったので、ここで使い方を整理したいと思います。 Contents1 超基本的な使い方1.1 頻出オプション1.2 組み合 …

no image

CSRF(クロスサイト・リクエスト・フォージェリ)

Contents1 CSRF(クロスサイト・リクエスト・フォージェリ)とは?2 被害3 対策4 参考(トークンチェック) CSRF(クロスサイト・リクエスト・フォージェリ)とは? ウェブサイトの中には …

no image

ログ抽出コマンド特集 その2 シェルスクリプトの算術計算、配列とループ

前回の続きですが、ログを収集し、分布(80%台が~%、70%台が~%)を出したいとします。 Contents1 ロジック2 ソース3 気づいたこと4 参考リンク ロジック ロジックは以下のような流れに …

no image

大規模Webサービス技術入門 DBの分散

前回に引き続き、大規模サービスを運用するときに必要になるMySQLの知識についてのまとめ Contents1 テーブル・SQL設計2 レプリケーション機能3 パーティショニング テーブル・SQL設計 …

no image

ログ抽出コマンド特集 その3 データの収集や抽出にかかわるコマンド群(sort ,tr,cut)

サーバーの負荷を見る場合、unixコマンドでログを抽出できたりすると何かと便利です。 いままでも下記の記事でこれらの出力を行いました。 ログ抽出コマンド特集 その1 cat+grep+sort 私が本 …

アーカイブ