PHP JSONを連想配列にする(json_decode)

PHPのJSONを連想配列にするサンプルです。
(確認環境:PHP 7)

目次

サンプル json_decode関数
  JSONを連想配列にする
  JSONをオブジェクトにする

json_decode関数

json_decode ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )
  • json_decode関数は、JSONをデコードして変数に格納します。
  • 1つめの引数にJSON文字列を指定します。
  • 2つめの引数をfalseにするとオブジェクトを返します。デフォルトです。
  • 2つめの引数をtrueにすると連想配列形式のオブジェクトを返します。
  • 2つめ以降の引数は省略可能です。

 

JSONを連想配列にする

JSONを連想配列形式のオブジェクトにするサンプルです。

<?php

$a = '{"color1":"赤","color2":"青"}';

$b = json_decode($a,true);

print $b["color1"]; //赤

var_dump($b);
//array(2) { ["color1"]=> string(3) "赤" ["color2"]=> string(3) "青" }

?>

3行目は、JSON文字列です。
5行目は、json_decode関数でデコードしています。2つめの引数をtrueにしています。
7行目は、キーを指定して値を表示しています。連想配列の指定の仕方です。
9行目は、JSON文字列をデコードした結果を表示しています。
10行目の出力結果は、arrayです。

 

JSONをオブジェクトにする

<?php

$a = '{"color1":"赤","color2":"青"}';

$b = json_decode($a);

print $b->{"color1"}; //赤

var_dump($b);
//object(stdClass)#1 (2) { ["color1"]=> string(3) "赤" ["color2"]=> string(3) "青" }

?>

3行目は、JSON文字列です。
5行目は、json_decode関数でデコードしています。2つめの引数がない場合デフォルトでfalseになりオブジェクトを返します。
7行目は、キーを指定して値を表示しています。
9行目は、JSON文字列をデコードした結果を表示しています。
10行目の出力結果は、object(stdClass)です。

以下は、PHPマニュアルのjson_decodeのリンクです。
https://www.php.net/manual/ja/function.json-decode.php

関連の記事

PHP 連想配列をJSONにする(json_encode)
PHP 変数から連想配列を作成するサンプル(compact)

△上に戻る