PHPでJSONを整形して綺麗な形で出力する方法!

JSONはデータフォーマットの1つでバックエンドとフロントエンドでデータをやり取りする際に用いられます。PHPでは連想配列をJSON文字列に変換するjson_encode関数があります。この記事ではJSONを整形して綺麗な形で出力する方法を紹介します。

コンテンツ [表示]

  1. 1PHPでJSONを整形して綺麗な形で出力する方法
  2. 1.1JSON_UNESCAPED_UNICODE
  3. 1.2JSON_PRETTY_PRINT

PHPでJSONを整形して綺麗な形で出力する方法

JSONはデータフォーマットの1つでJavaScriptのオブジェクトの書き方を基にしたデータ形式なので、フロントエンドでデータを受け取った際にJavaScriptで扱いやすいのが特徴です。またJava,PHP,Pythonなどのバックエンドの言語でもサポートされているので、バックエンドとフロントエンドのデータのやり取りが簡単にできます。

PHPでは連想配列をJSON形式の文字列として変換出力してくれるjson_encode関数があります。

json_encode関数は引数に連想配列を渡すだけでその連想配列をJSON形式の文字列に変換してくれます。

ですが、引数に連想配列を指定するだけでは整形されずJSON形式の文字列は1行に表示され、日本語の文字列はUnicodeエスケープシーケンスにエンコードされてしまい、このままでは読みづらいどころか読むことすらできない状態です。

これはjson_encode関数の引数にオプションを指定することで解決します。

JSON_UNESCAPED_UNICODE

json_encode関数の第二引数にJSON_UNESCAPED_UNICODEを指定することで、日本語の文字列がUnicodeエスケープシーケンスにエンコードされずに我々にも読むことにできる日本語で表示されます。

しかし、これでも1行のままで表示されています。次のオプションで複数行に整形することが出来ます。

JSON_PRETTY_PRINT

json_encode関数の第二引数にJSON_PRETTY_PRINTを指定することで複数行に整形することができ、JSON形式として読みやすい形になりました。

また、json_encode関数の第二引数で指定するオプションはパイプラインで区切ることで複数指定することができます。

Qumeru[クメル]ではプログラミング学習が出来るカリキュラムを7月31日までの期間限定で無料で提供しています。

無料登録することで、すぐにプログラミング学習を始められます。ぜひカリキュラムをお試し下さい!

関連記事

【期間限定】全カリキュラム無料で提供中!

Qumeru[クメル]ではプログラミング学習の全カリキュラムを7月31日まで期間限定で無料で提供しています。

無料登録することで、すぐにプログラミング学習を始められます。ぜひお試し下さい!

目次

みぎさん
ライター

みぎさん

大阪府の現役システムエンジニアです。WEB制作やWEB開発、ライティングなど幅広く活動しております。 【言語/FW】HTML,CSS,Sass,JavaScript,jQuery,Vue.js,PHP,WordPress,Laravel,Java