Comment convertir plusieurs tableaux d'objets en tableau d'objets JSON en php

PHPz
Libérer: 2023-04-23 16:14:33
original
447 Les gens l'ont consulté

Dans le développement PHP, nous avons souvent besoin de convertir des tableaux de chaînes en objets JSON, notamment lors de l'interaction avec le front-end. Mais parfois, nous rencontrons des situations dans lesquelles nous devons convertir plusieurs tableaux d'objets en tableaux d'objets JSON. Cet article détaille comment convertir plusieurs tableaux d'objets en tableaux d'objets JSON.

1. Convertir une chaîne en un tableau d'objets

En PHP, on peut utiliser la fonction json_decode() pour convertir une chaîne au format JSON en un tableau d'objets. L'exemple de code est le suivant :

$jsonStr = '{"name": "Tom", "age": 20}'; $jsonArr = json_decode($jsonStr, true); var_dump($jsonArr);
Copier après la connexion

Le résultat est le suivant :

array(2) { ["name"]=> string(3) "Tom" ["age"]=> int(20) }
Copier après la connexion

Lors de l'utilisation de la fonction json_decode(), lorsque le deuxième paramètre est vrai, cela signifie convertir la chaîne au format JSON en un tableau associatif, sinon ce sera transformé en objet.

2. Convertir le tableau d'objets en un tableau d'objets JSON

Tout d'abord, nous devons clarifier le format du tableau d'objets JSON. Il s'agit généralement d'un tableau composé de plusieurs objets JSON comprenant plusieurs paires clé-valeur. Un exemple est le suivant :

[ {"name": "Tom", "age": 20}, {"name": "Jerry", "age": 18}, {"name": "Emma", "age": 25} ]
Copier après la connexion

Alors, comment convertir plusieurs tableaux d'objets en PHP en tableau d'objets JSON ci-dessus ? Nous pouvons le faire en utilisant une boucle.

L'exemple de code est le suivant :

//对象数组1 $objArr1 = [ ["name" => "Tom", "age" => 20], ["name" => "Jerry", "age" => 18] ]; //对象数组2 $objArr2 = [ ["name" => "Emma", "age" => 25], ["name" => "Lily", "age" => 22] ]; //JSON对象数组 $jsonArr = []; foreach ($objArr1 as $item) { $jsonArr[] = json_decode(json_encode($item)); } foreach ($objArr2 as $item) { $jsonArr[] = json_decode(json_encode($item)); } //输出JSON对象数组 echo json_encode($jsonArr);
Copier après la connexion

Expliquez le code ci-dessus. Tout d'abord, deux tableaux d'objets PHP $objArr1 et $objArr2 sont définis. Définissez ensuite un tableau d'objets JSON vide $jsonArr et utilisez une boucle pour convertir chaque objet de $objArr1 et $objArr2 en un objet JSON et ajoutez-le à $jsonArr. Enfin, utilisez la fonction json_encode() pour convertir $jsonArr en une sortie de chaîne au format JSON, obtenant ainsi le tableau d'objets JSON requis.

3. Convertir plusieurs tableaux d'objets en tableaux de tableaux d'objets

Dans certains cas, nous devons convertir plusieurs tableaux d'objets en un tableau de tableaux d'objets au lieu d'un tableau d'objets JSON fusionné. À ce stade, il nous suffit de convertir chaque tableau d'objets en tableau d'objets dans la boucle et de les ajouter à un tableau.

L'exemple de code est le suivant :

//对象数组1 $objArr1 = [ ["name" => "Tom", "age" => 20], ["name" => "Jerry", "age" => 18] ]; //对象数组2 $objArr2 = [ ["name" => "Emma", "age" => 25], ["name" => "Lily", "age" => 22] ]; //对象数组数组 $objArrArr = []; foreach ($objArr1 as $item) { $objArrArr[] = json_decode(json_encode($item)); } foreach ($objArr2 as $item) { $objArrArr[] = json_decode(json_encode($item)); } //输出对象数组数组 var_dump($objArrArr);
Copier après la connexion

Le résultat est le suivant :

array(4) { [0]=> object(stdClass)#1 (2) { ["name"]=> string(3) "Tom" ["age"]=> int(20) } [1]=> object(stdClass)#2 (2) { ["name"]=> string(5) "Jerry" ["age"]=> int(18) } [2]=> object(stdClass)#3 (2) { ["name"]=> string(4) "Emma" ["age"]=> int(25) } [3]=> object(stdClass)#4 (2) { ["name"]=> string(4) "Lily" ["age"]=> int(22) } }
Copier après la connexion

Dans le code ci-dessus, nous définissons deux tableaux d'objets $objArr1 et $objArr2, et définissons un tableau de tableaux d'objets vide $objArrArr. Ensuite, bouclez, convertissez chaque objet de $objArr1 et $objArr2 en un tableau d'objets et ajoutez-les à $objArrArr. Enfin, génèrez $objArrArr pour obtenir le tableau de tableaux d'objets requis.

Résumé

Cet article présente principalement comment convertir plusieurs tableaux d'objets en tableaux d'objets JSON et en tableaux de tableaux d'objets. Lors de la conversion JSON, vous devez faire attention au deuxième paramètre de la fonction json_decode(). Nous recommandons généralement d'utiliser true pour convertir la chaîne au format JSON en un tableau associatif. Lorsque vous utilisez une conversion en boucle, vous devez faire attention à convertir chaque objet en un objet JSON ou un tableau d'objets et à les ajouter à un tableau.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!