PHPを使用して配列をJSONに変換する方法

PHPz
リリース: 2023-03-29 15:24:17
オリジナル
1028 人が閲覧しました

PHP で配列を JSON に変換するのは一般的なタスクです。 JSON は最新のアプリケーションで最も一般的に使用されるデータ形式の 1 つであり、PHP は JSON データの処理をサポートする強力なサーバー側言語です。

この記事では、PHP を使用して配列を JSON に変換する方法を説明します。次のトピックに焦点を当てます:

  1. JSON とは何ですか?
  2. json_encode() 関数を使用して PHP 配列を JSON に変換するにはどうすればよいですか?
  3. オプション パラメーターを使用して JSON データをフォーマットするにはどうすればよいですか?
  4. JSON_PRETTY_PRINT オプションと indent_size パラメーターを使用して JSON データをフォーマットするにはどうすればよいですか?
  5. json_decode() 関数を使用して、JSON データを PHP 配列に変換します。

JSON とは何ですか?

JSON (JavaScript Object Notation) は、JavaScript のオブジェクトと配列に基づいた構造を持つ軽量のデータ交換形式です。 JSON データは、キーと値のペアのシンプルでわかりやすいリストとして存在し、特定の形式で記述することができます。 JSON データ形式は、Web アプリケーション間のデータ交換によく使用され、後で使用するためにデータを保存するためにもよく使用されます。

PHP では、 json_encode() 関数を使用して配列を JSON 形式に変換し、 json_decode() 関数を使用して JSON データを PHP 配列に変換できます。 json_encode() 関数を使用して配列を JSON 形式に変換する方法を次に示します。

PHP 配列を JSON に変換するにはどうすればよいですか?

PHP には、PHP 配列を JSON 形式に変換できる組み込み関数 json_encode() が用意されています。

次は、json_encode() 関数を使用して単純な PHP 配列を JSON 形式に変換する例です。

<?php
$myArray = array("name" => "Mike", "age" => 25, "city" => "New York");
$myJSON = json_encode($myArray);
echo $myJSON;
?>
ログイン後にコピー

上の例では、事前定義された配列 $myArray と json_encode( ) 関数はそれを JSON 形式に変換し、結果を $myJSON 変数に保存します。最後に、echo ステートメントを使用して $myJSON 変数の値を出力します。

このコードの出力は次のとおりです:

{"name":"Mike","age":25,"city":"New York"}
ログイン後にコピー

ご覧のとおり、$array 配列は JSON 文字列に正常に変換されました。以下では、JSON データを読みやすくするためにフォーマットする方法について説明します。

オプション パラメーターを使用して JSON データをフォーマットするにはどうすればよいですか?

php json_encode() 関数は、JSON データをフォーマットしてデータを読みやすく理解しやすくするためのオプション パラメーターをいくつか提供します。

PHP の json_encode() 関数は、特定の形式に従って JSON 文字列をフォーマットするために使用できるオプションの $options パラメーターを提供します。設定できるオプションは次のとおりです:

JSON_HEX_TAG: 文字「<」と「>」をそれぞれ「\u003C」と「\u003E」に変換します。
JSON_HEX_AMP: 「&」文字を「\u0026」に変換します。
JSON_HEX_APOS: 一重引用符 (') 文字を「\u0027」に変換します。
JSON_HEX_QUOT: 二重引用符 (") 文字を "\u0022" に変換します。
JSON_FORCE_OBJECT: 配列を強制的にオブジェクトに変換します。
JSON_NUMERIC_CHECK: 数値文字列を数値型に変換します。
JSON_UNESCAPED_SLASHES: スラッシュ (/) 文字をエスケープしないでください。
JSON_PRETTY_PRINT: JSON を読みやすい形式にフォーマットします。
JSON_UNESCAPED_UNICODE: Unicode 文字をエスケープしないでください。

PHP での方法は次のとおりです。 JSON データをフォーマットするための $options パラメータ:

<?php
$myArray = array("name" => "Mike", "age" => 25, "city" => "New York");
$myJSON = json_encode($myArray, JSON_PRETTY_PRINT);
echo $myJSON;
?>
ログイン後にコピー

上の例では、JSON_PRETTY_PRINT オプションを json_encode() 関数の $options パラメータに渡し、JSON データをより読みやすくフォーマットします。オプションとパラメーターに基づいて、読みやすく理解しやすい JSON 文字列を作成します。

次は、フォーマットされた JSON データです:

{
    "name": "Mike",
    "age": 25,
    "city": "New York"
}
ログイン後にコピー
ログイン後にコピー

indent_size パラメーターを使用して、JSON データ変換を最適化することもできます。 :

<?php
$myArray = array("name" => "Mike", "age" => 25, "city" => "New York");
$myJSON = json_encode($myArray, JSON_PRETTY_PRINT, 4);
echo $myJSON;
?>
ログイン後にコピー

上記の例では、indent_size パラメータを使用してインデント スペースの数を設定し、それを json_encode() 関数に渡します。最終出力は、指定されたインデント数に基づいて JSON 文字列を生成します。

次は、indent_size パラメーターと JSON_PRETTY_PRINT オプション (インデントに 4 つのスペースを使用) を使用してフォーマットされた JSON データです:

{
    "name": "Mike",
    "age": 25,
    "city": "New York"
}
ログイン後にコピー
ログイン後にコピー

json_decode() 関数を使用して JSON データを変換する方法PHP 配列へ ?

PHP の json_decode() 関数は、JSON 文字列を PHP 配列に変換できます。

JSON 文字列を PHP 配列に変換する方法の例を次に示します。

<?php
$myJSON = &#39;{"name":"Mike","age":25,"city":"New York"}&#39;;
$myArray = json_decode($myJSON, true);
print_r($myArray);
?>
ログイン後にコピー

上の例では、$myJSON 変数に保存されている JSON 文字列を取得し、json_decode() 関数を使用して PHP 配列に変換します。関数が変換するように 2 番目のパラメーターを true に設定します。 JSON オブジェクト PHP 連想配列に変換します。

最後に、print_r() 関数を使用して $myArray 配列の内容を出力し、PHP 配列に正常に変換されたかどうかを確認します。

出力は次のとおりです:

Array
(
    [name] => Mike
    [age] => 25
    [city] => New York
)
ログイン後にコピー

この記事では、PHP を使用して配列を JSON 形式に変換する方法と、json_decode() 関数を使用して JSON データを PHP 配列に変換する方法について説明しました。オプションのパラメーターとインデントの書式設定の使用方法、JSON データに改行とスペースを追加して、読みやすく理解しやすくします。

PHP 配列を JSON データに変換する方法を知ることは、データ交換のプロセスを大幅に簡素化できるため、非常に便利なスキルです。急いで、近いうちに PHP プロジェクトを手元に置いて、試してみてください。

以上がPHPを使用して配列をJSONに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート