マジックメソッドを巡る旅 その8

※この記事は読者によって投稿されたユーザー投稿のため、編集部の見解や意向と異なる場合があります。また、編集部はこの内容について正確性を保証できません。

ヒューマンリソシア株式会社はコラム「マジックメソッドを巡る旅 その8」を公開しました。
「serialize() 、unserialize() 経由で__sleep(), __wakeup()のマジックメソッド」の続きになります。
頑張っていきましょう。

さて少し見ておきたいのが日本語入りの情報です。
serializeとjsonで、そこそこの違いが見えてきます。

$awk = array(‘あいうえお’);
//
$s = serialize($awk);
//$s = json_encode($awk);
//
var_dump( $s );

serializeの結果
string(33) “a:1:{i:0;s:15:”あいうえお”;}”

jsonの結果
string(34) “[“\u3042\u3044\u3046\u3048\u304a”]”

jsonの場合、マルチバイトは、Unicodeエスケープされます(json自体「ユニコードを常にエスケープするべきか」って
あたりはまた別途議論があるのですが、PHPのjson_encode関数は、常にUnicodeエスケープをします)。
もし、serializeとjsonを「文字列の長さだけ」で判断しようとする場合、マルチバイトの有無や含まれる比率、は、
考察時に重要なポイントかもしれません。

さて。
serializeの最大の眼目は「配列ではなくてインスタンス(オブジェクト)を渡した時」になります。

この続きは以下をご覧ください
http://resocia.jp/column/2085/

この記事が役に立ったらシェア!
メルマガの登録はこちら Web担当者に役立つ情報をサクッとゲット!

人気記事トップ10(過去7日間)

今日の用語

インデックス
検索エンジンがWebページをデータベースに保存しているデータベース。データベース ...→用語集へ

インフォメーション

RSSフィード


Web担を応援して支えてくださっている企業さま [各サービス/製品の紹介はこちらから]