PHPの連想配列をjsonに変換する方法| プロサバメモ

WEBプログラミングやサーバ設定などのメモ場

PHPの連想配列をjsonに変換する方法

2022.03.22

PHPの連想配列をjsonに変換する方法です。

バックエンドのPHPからjsonを生成してフロントエンドjavascriptに返す時などに使えます。

PHP例

//jsonのもととなる連想配列を作成
$data = array();
$data['hoge1'] = 'data1';
$data['hoge2'] = array(
                    'hoge2_1' => 'data2_1',
                    'hoge2_2' => 'data2_2',
                );
$data['hoge3'] = 'data3';

// 連想配列をjsonに変換
$php_json = json_encode( $data ); 

// php_jsonを出力。なんらかの方法でjavascriptへ
echo $php_json;

PHPの出力結果

{"hoge1":"data1","hoge2":{"hoge2_1":"data2_1","hoge2_2":"data2_2"},"hoge3":"data3"}

phpから生成されたjsonをなんらかの方法でjavascriptで受け取った場合、そのjsonデータをJSON.parse()でパースしないと、javascript側でjsonとして認識しないので注意。

javascript例

// php_jsonにphpから生成されたjsonを受け取った場合
let js_json = JSON.parse( php_json ); 
console.log( js_json.hoge1 );
console.log( js_json.hoge2.hoge2_1 );

関連記事

TOP