Maison  >  Article  >  développement back-end  >  Comment convertir json en objet tableau objet tableau en php

Comment convertir json en objet tableau objet tableau en php

王林
王林original
2023-05-06 12:10:08435parcourir

Pendant le processus d'encodage, la transmission de données au format JSON est une opération très courante. PHP fournit une fonction appelée json_decode() pour convertir les chaînes JSON en valeurs PHP. Cet article explique comment utiliser PHP pour convertir JSON en tableaux et objets. json_decode() 的函数,用于将 JSON 字符串转换为 PHP 值。本文将介绍如何使用 PHP 来将 JSON 转换为数组和对象。

使用 json_decode() 转换为数组

假设我们有以下 JSON 字符串:

{
    "name": "Tom",
    "age": 30,
    "hobbies": ["reading", "running", "swimming"],
    "address": {
        "city": "Beijing",
        "country": "China"
    }
}

现在我们需要将其转换为 PHP 数组。我们可以使用 json_decode() 函数,并将第二个参数设置为 true,以表示将 JSON 字符串转换为关联数组,代码如下:

$jsonString = '{"name":"Tom","age":30,"hobbies":["reading","running","swimming"],"address":{"city":"Beijing","country":"China"}}';
$assocArray = json_decode($jsonString, true);
print_r($assocArray);

输出结果为:

Array
(
    [name] => Tom
    [age] => 30
    [hobbies] => Array
        (
            [0] => reading
            [1] => running
            [2] => swimming
        )

    [address] => Array
        (
            [city] => Beijing
            [country] => China
        )

)

可以看到,我们成功将 JSON 字符串转换为了 PHP 数组,并打印了其结果。

使用 json_decode() 转换为对象

除了将 JSON 字符串转换为 PHP 数组外,我们还可以将其转换为 PHP 对象。同样地,我们可以使用 json_decode() 函数,并将第二个参数设置为 false 或省略,以表示将 JSON 字符串转换为对象,代码如下:

$jsonString = '{"name":"Tom","age":30,"hobbies":["reading","running","swimming"],"address":{"city":"Beijing","country":"China"}}';
$obj = json_decode($jsonString);
var_dump($obj);

输出结果为:

object(stdClass)#1 (4) {
  ["name"]=>
  string(3) "Tom"
  ["age"]=>
  int(30)
  ["hobbies"]=>
  array(3) {
    [0]=>
    string(7) "reading"
    [1]=>
    string(7) "running"
    [2]=>
    string(8) "swimming"
  }
  ["address"]=>
  object(stdClass)#2 (2) {
    ["city"]=>
    string(7) "Beijing"
    ["country"]=>
    string(5) "China"
  }
}

可以看到,我们成功将 JSON 字符串转换为了 PHP 对象,并打印了其结果。

使用 json_decode() 转换为对象数组

在某些情况下,我们需要将 JSON 字符串转换为多个 PHP 对象。在这种情况下,我们可以先将其转换为 PHP 数组,然后使用数组映射函数将其转换为 PHP 对象数组。代码如下:

$jsonString = '[{"name":"Tom","age":30},{"name":"Alice","age":25},{"name":"Bob","age":40}]';
$array = json_decode($jsonString, true);
$objArray = array_map(function($item) {
    return (object) $item;
}, $array);
print_r($objArray);

输出结果为:

Array
(
    [0] => stdClass Object
        (
            [name] => Tom
            [age] => 30
        )

    [1] => stdClass Object
        (
            [name] => Alice
            [age] => 25
        )

    [2] => stdClass Object
        (
            [name] => Bob
            [age] => 40
        )

)

可以看到,我们成功将 JSON 字符串转换为了 PHP 对象数组,并打印了其结果。

总之,PHP 提供了一个非常方便的方法来将 JSON 字符串转换为 PHP 数组和对象。我们只需要使用 json_decode()

Convertir en tableau en utilisant json_decode()

Supposons que nous ayons la chaîne JSON suivante : 🎜rrreee🎜Maintenant, nous devons la convertir en tableau PHP. Nous pouvons utiliser la fonction json_decode() et définir le deuxième paramètre sur true pour convertir la chaîne JSON en un tableau associatif. Le code est le suivant : 🎜rrreee🎜Output The. le résultat est : 🎜rrreee🎜Comme vous pouvez le voir, nous avons réussi à convertir la chaîne JSON en un tableau PHP et à imprimer le résultat. 🎜

Convertir en objet en utilisant json_decode()

🎜En plus de convertir une chaîne JSON en tableau PHP, nous pouvons également la convertir en objet PHP. De même, nous pouvons utiliser la fonction json_decode() et définir le deuxième paramètre sur false ou l'omettre pour convertir la chaîne JSON en objet. Le code est le suivant : 🎜 rrreee🎜Le résultat de sortie est : 🎜rrreee🎜Comme vous pouvez le voir, nous avons réussi à convertir la chaîne JSON en un objet PHP et à imprimer le résultat. 🎜

Utilisez json_decode() pour convertir en un tableau d'objets

🎜Dans certains cas, nous devons convertir une chaîne JSON en plusieurs objets PHP. Dans ce cas, nous pouvons d'abord le convertir en tableau PHP, puis utiliser la fonction de mappage de tableau pour le convertir en un tableau d'objets PHP. Le code est le suivant : 🎜rrreee🎜Le résultat de sortie est : 🎜rrreee🎜Comme vous pouvez le voir, nous avons réussi à convertir la chaîne JSON en un tableau d'objets PHP et à imprimer le résultat. 🎜🎜En bref, PHP fournit un moyen très pratique de convertir des chaînes JSON en tableaux et objets PHP. Il suffit d'utiliser la fonction json_decode() et de spécifier les paramètres appropriés. Ceci est utile car la plupart des API Web renvoient des données au format JSON. 🎜

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