Maison >développement back-end >Problème PHP >Comment convertir json en tableau en php

Comment convertir json en tableau en php

藏色散人
藏色散人original
2022-01-20 11:36:189295parcourir

Comment convertir json en tableau en php : 1. Créez un exemple de fichier PHP ; 2. Définissez une donnée JSON ; 3. Convertissez json en tableau via la méthode "json_decode($json,true)".

Comment convertir json en tableau en php

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3

Comment convertir json en tableau en php ?

json_decode()

Cette fonction est utilisée pour convertir le texte json est la structure de données PHP correspondante.

Voici un exemple :

$json ='{"foo": 12345}';
 
$obj = json_decode($json);
 
print $obj->{'foo'};// 12345

Normalement, json_decode() renvoie toujours un objet PHP, pas un tableau. Par exemple :

$json ='{"a":1,"b":2,"c":3,"d":4,"e":5}';
 
var_dump(json_decode($json));

Le résultat est de générer un objet PHP :

object(stdClass)#1 (5) {
 
  ["a"] => int(1)
  ["b"] => int(2)
  ["c"] => int(3)
  ["d"] => int(4)
  ["e"] => int(5)
 
}

Si vous souhaitez forcer la génération du tableau associatif PHP, json_decode() doit ajouter un paramètre true :

$json ='{"a":1,"b":2,"c":3,"d":4,"e":5}';
  
var_dump(json_decode($json,true));

Le résultat est de générer un tableau associatif array :

array(5) {
 
   ["a"] => int(1)
   ["b"] => int(2)
   ["c"] => int(3)
   ["d"] => int(4)
   ["e"] => int(5)
}

Les trois suivants L'écriture json est incorrecte. Pouvez-vous voir où se trouve l'erreur ?

Erreurs courantes dans json_decode()

$bad_json ="{ 'bar': 'baz' }";
 
$bad_json ='{ bar: "baz" }';
 
$bad_json ='{ "bar": "baz", }';

La première erreur est que le délimiteur json (délimiteur) autorise uniquement l'utilisation de guillemets doubles, pas de guillemets simples. La deuxième erreur est que le "nom" (la partie à gauche des deux points) de la paire nom-valeur json doit dans tous les cas utiliser des guillemets doubles. La troisième erreur est que vous ne pouvez pas ajouter une virgule après la dernière valeur. L'exécution de json_decode() sur ces trois chaînes renverra null et signalera une erreur.

De plus, json ne peut être utilisé que pour représenter des objets et des tableaux. Si json_decode() est utilisé sur une chaîne ou une valeur, null sera renvoyé.

var_dump(json_decode("Hello World"));//null

Apprentissage recommandé : "Tutoriel vidéo PHP"

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