Maison >développement back-end >tutoriel php >Comment fusionner plusieurs chaînes JSON en PHP ?

Comment fusionner plusieurs chaînes JSON en PHP ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-06 07:58:02627parcourir

How do you merge multiple JSON strings in PHP?

Fusionner plusieurs chaînes JSON en PHP

La combinaison de plusieurs chaînes JSON peut être nécessaire lorsque vous travaillez avec des données provenant de différentes sources ou que vous effectuez des manipulations de données complexes. En PHP, il existe plusieurs approches pour fusionner des chaînes JSON.

Méthode 1 : json_encode() et array_merge()

Une approche courante consiste à utiliser Fonction json_decode() pour convertir les chaînes JSON en tableaux PHP. Vous pouvez ensuite utiliser la fonction array_merge() pour combiner les tableaux et conserver les paires clé-valeur de chaque chaîne JSON. Enfin, utilisez json_encode() pour reconvertir le tableau fusionné en chaîne 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);

Méthode 2 : array_merge_recursive()

Si vous devez fusionner des chaînes JSON contenant des structures imbriquées, vous pouvez utiliser array_merge_recursive() au lieu de array_merge(). Cette fonction fusionnera de manière récursive des tableaux, y compris des tableaux et des objets imbriqués.

$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);

En utilisant ces techniques, vous pouvez fusionner efficacement des chaînes JSON en PHP et manipuler des données provenant de plusieurs sources.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn