Maison >développement back-end >Problème PHP >Comment convertir une chaîne JSON en tableau en php

Comment convertir une chaîne JSON en tableau en php

PHPz
PHPzoriginal
2023-04-19 10:09:15511parcourir

PHP, en tant que langage de programmation Web puissant, doit souvent convertir les données au format JSON pour la transmission. Dans de nombreux cas, nous devons convertir les données au format JSON en tableaux pour faciliter le traitement et la présentation des programmes PHP. Cet article présentera brièvement comment convertir une chaîne JSON en un tableau PHP à l'aide des fonctions intégrées de PHP.

  1. Qu'est-ce que JSON

JSON est un format d'échange de données léger, facile à lire et à écrire, et facile à analyser et à générer pour les machines. Il est basé sur la syntaxe JavaScript mais contrairement à elle, JSON est un format de texte utilisé pour stocker et échanger des données.

JSON se compose de deux structures de données : les objets et les tableaux. Un objet est une collection non ordonnée de paires clé/valeur, et un tableau est une collection ordonnée de valeurs. JSON peut représenter des types de données simples, tels que des nombres, des chaînes, des valeurs booléennes et des valeurs nulles, ainsi que des types de données complexes, tels que des tableaux et des objets. Le format des chaînes JSON est fixe et peut être facilement analysé et généré via des langages de programmation tels que JavaScript et PHP.

  1. Fonction intégrée PHP json_decode()

PHP fournit une fonction intégrée très puissante json_decode(), qui peut convertir des chaînes au format JSON en tableaux PHP. Le prototype de la fonction est le suivant :

mixed json_decode(string $json_string, bool $assoc = false, int $degree = 512, int $options = 0)

Description du paramètre :

  • $json_string : obligatoire. La chaîne JSON à décoder.
  • $assoc : Facultatif. La valeur par défaut est false, ce qui signifie qu'un objet sera renvoyé. Si vrai, un tableau associatif sera renvoyé.
  • $profondeur : Facultatif. La profondeur à laquelle le décodeur peut analyser de manière récursive. La valeur par défaut est 512.
  • $options : Facultatif. Il peut s'agir de l'une des constantes suivantes : JSON_BIGINT_AS_STRING, JSON_INVALID_UTF8_IGNORE, JSON_INVALID_UTF8_SUBSTITUTE, JSON_OBJECT_AS_ARRAY, JSON_THROW_ON_ERROR. La valeur par défaut est 0, ce qui signifie qu'il n'y a aucune option.

Cette fonction renvoie un tableau ou un objet PHP.

Par exemple :

$json_string = '{"name":"John", "age":30, "city":"New York"}';
$result = json_decode($json_string, true);
print_r ($result);

affichera :

Array
(

[name] => John
[age] => 30
[city] => New York

)

Si nous définissons le deuxième paramètre sur false, il renverra un objet comme celui-ci :

$json_string = '{" name": "John", "age":30, "city":"New York"}';
$result = json_decode($json_string);
echo $result->name;

affichera :

John

  1. Exemple

Ensuite, nous donnerons un exemple complet de la façon de convertir une chaîne JSON en un tableau PHP.

//Définissez la chaîne JSON à décoder
$json_string = '{"name":"John", "age":30, "city":"New York"}';

/ /Décoder JSON et renvoyer un tableau PHP
$result = json_decode($json_string, true);

//Imprimer les valeurs dans le tableau
echo "Name: " . ;
echo "Age: " . $result['age'] '
";
echo "City: " . $result['city'];
?>

affichera les résultats suivants :

Name. : John

Âge : 30
Ville : New York

    Résumé
Cet article décrit comment utiliser la fonction intégrée PHP json_decode() pour convertir une chaîne au format JSON en un tableau PHP. Nous avons également expliqué comment modifier le comportement par défaut et décoder sélectivement JSON en un tableau ou un objet associatif. Enfin, nous fournissons un exemple complet d'utilisation de la fonction json_decode() dans un programme PHP. Dans les projets réels, la fonction json_decode() de PHP est très importante. Elle peut rendre nos programmes plus flexibles et plus efficaces.

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