JSON(JavaScriptオブジェクト表記)は、Web開発で広く使用されている軽量のデータ交換形式です。これは、さまざまな言語でのデータの処理と転送を容易にするJavaScriptオブジェクト表記に基づいています。
PHPは、JSON文字列をPHPアレイに変換できるJSON_DECODE関数を提供します。 2番目のパラメーターをtrueに設定して、配列変換を実装します。
$ json_string = '{"name": "john"、 "age":30、 "City": "New York"}'; $ data = json_decode($ json_string、true); print_r($ data);
出力結果:
配列 ( [名前] =>ジョン [年齢] => 30 [市] =>ニューヨーク ))
JSON文字列をPHPオブジェクトに変換する必要がある場合は、json_decodeの2番目のパラメーターを省略し、デフォルトでオブジェクトフォームを返すことができます。
$ json_string = '{"name": "john"、 "age":30、 "City": "New York"}'; $ data = json_decode($ json_string); echo $ data-> name; // Johnを出力します
JSONデータがファイルに保存されている場合、最初にfile_get_contents関数を使用してファイルコンテンツを読み取り、json_decodeを使用して変換できます。
$ json_string = file_get_contents( 'data.json'); $ data = json_decode($ json_string、true);
PHPは、json_encode関数を提供して、配列またはオブジェクトをJSON形式の文字列に変換して、データの送信またはストレージを簡単にします。
$ data = array( 'name' => 'John'、 「年齢」=> 30、 「都市」=>「ニューヨーク」 ); $ json_string = json_encode($ data); echo $ json_string; // output:{"name": "John"、 "age":30、 "City": "New York"}
デフォルトでは、JSON_ENCODEはUnicode文字をエスケープします。 json_unescaped_unicodeオプションを使用すると、Unicode文字が逃げられないようにすることができ、中国語や他のキャラクターが表示されるのに便利になります。
$ data = array( 'name' => 'Zhang San'、 「年齢」=> 30、 「都市」=>「北京」 ); $ json_string = json_encode($ data、json_unescaped_unicode); echo $ json_string; // output:{"name": "Zhang San"、 "age":30、 "City": "Beijing"}
PHPでは、JSON_DECODEとJSON_ENCODE関数を使用すると、JSONと配列またはオブジェクト間の変換を簡単に実装でき、ファイルからのデータの読み取りとUnicode文字の処理をサポートし、WebアプリケーションでのJSONデータの操作を大幅に促進します。