PHP – json

概要

JSONの文字列が与えられたときの扱い。

  1. json_decodeで文字列をPHPの変数に変換
  2. json_encodeでPHPの変数を文字列に変換
    • このとき、JSON_UNESCAPED_UNICODEJSON_PRETTY_PRINTのフラグを立てる

json_decode

json_decode関数は、引数で与えられたJSON文字列をPHPの変数に変換する。

JSONのキーや単体の要素はstringに、{ ... }stdClassのオブジェクトに変換され、キー=>値がオブジェクトのプロパティーとなっている。

json_encode

そのままエンコードした場合

json_encodeは、PHPの変数で表現されたJSONコードを文字列に変換する。

ただしこのとき、ユニコードはエスケープされ、改行を含まない文字列となる。

オプションフラグの設定

以下の2つのフラグをセットする。

JSON_UNESCAPED_UNICODE
ユニコード文字をエスケープせずに扱う。
JSON_PRETTY_PRINT
JSONの構造に即した改行・インデントを適用する。

これによって、ユニコード文字列はエスケープされず、JSONの構造に即した改行・インデントが適用された文字列が得られる。

 

コメントを残す

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