ホームページ  >  記事  >  バックエンド開発  >  PHP で複数の JSON 文字列をマージするにはどうすればよいですか?

PHP で複数の JSON 文字列をマージするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-06 07:58:02387ブラウズ

How do you merge multiple JSON strings in PHP?

PHP での複数の JSON 文字列の結合

異なるソースからのデータを操作する場合、または複雑なデータ操作を実行する場合、複数の JSON 文字列の結合が必要になる場合があります。 PHP では、JSON 文字列をマージする方法がいくつかあります。

方法 1: json_encode() と array_merge()

一般的な方法の 1 つは、 を使用することです。 json_decode() 関数を使用して、JSON 文字列を PHP 配列に変換します。その後、array_merge() 関数を使用して配列を結合し、各 JSON 文字列からのキーと値のペアを保持できます。最後に、json_encode() を使用して、結合された配列を JSON 文字列に変換します。

$json1 = '[{"COLUMN_NAME":"ORDER_NO","COLUMN_TITLE":"Order Number"},{"COLUMN_NAME":"CUSTOMER_NO","COLUMN_TITLE":"Customer Number"}]';
$json2 = '[{"COLUMN_NAME":"ORDER_NO","DEFAULT_VALUE":"1521"},{"COLUMN_NAME":"CUSTOMER_NO","DEFAULT_VALUEE":"C1435"}]';

$array1 = json_decode($json1, true);
$array2 = json_decode($json2, true);
$mergedArray = array_merge($array1, $array2);
$mergedJSON = json_encode($mergedArray);

方法 2: array_merge_recursive()

ネストされた構造を含む JSON 文字列をマージする必要がある場合は、array_merge() の代わりに array_merge_recursive() を使用できます。この関数は、ネストされた配列やオブジェクトを含む配列を再帰的にマージします。

$json1 = '{
  "records": [
    {"COLUMN_NAME":"ORDER_NO","COLUMN_TITLE":"Order Number"},
    {"COLUMN_NAME":"CUSTOMER_NO","COLUMN_TITLE":"Customer Number"}
  ]
}';

$json2 = '{
  "records": [
    {"COLUMN_NAME":"ORDER_NO","DEFAULT_VALUE":"1521"},
    {"COLUMN_NAME":"CUSTOMER_NO","DEFAULT_VALUEE":"C1435"}
  ]
}';

$array1 = json_decode($json1, true);
$array2 = json_decode($json2, true);
$mergedArray = array_merge_recursive($array1, $array2);
$mergedJSON = json_encode($mergedArray);

これらの手法を使用すると、PHP で JSON 文字列を効率的にマージし、複数のソースからのデータを操作できます。

以上がPHP で複数の JSON 文字列をマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。