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

Comment convertir json en tableau en php

Apr 20, 2023 am 10:07 AM

En PHP, la conversion de JSON en tableau est une opération courante. JSON est un format d'échange de données léger qui est de plus en plus populaire parmi les développeurs en raison de sa lisibilité et de sa portabilité. Lorsque vous utilisez PHP pour le traitement JSON, vous pouvez utiliser les fonctions intégrées de PHP pour convertir les données JSON en tableau. Dans cet article, nous apprendrons comment convertir JSON en tableau à l'aide de PHP.

  1. Utilisez la fonction json_decode() pour convertir JSON en tableau

PHP fournit une fonction appelée "json_decode()", qui peut convertir les données JSON en tableau PHP. Cette fonction prend deux paramètres, le premier est la chaîne JSON que vous souhaitez convertir et le second est un paramètre booléen facultatif qui spécifie s'il faut convertir le JSON en tableau associatif. Par défaut, la valeur de ce paramètre est false, ce qui signifie qu'un tableau normal est renvoyé.

Ce qui suit est un exemple de chaîne JSON :

$json_string = '{
  "name": "John",
  "age": 30,
  "city": "New York"
}';
Copier après la connexion

Convertissez cette chaîne JSON en un tableau associatif en appelant la fonction json_decode() :

$array = json_decode($json_string, true);
Copier après la connexion

Maintenant, nous pouvons obtenir la valeur des données JSON en accédant à la clé de le tableau, par exemple :

echo $array['name']; // 输出:John
echo $array['age']; // 输出:30
echo $array['city']; // 输出:New York
Copier après la connexion
  1. Prend en charge l'analyse chinoise JSON

Si la chaîne JSON contient des caractères chinois, un traitement spécial est requis pour l'analyser correctement. Vous pouvez utiliser les fonctions intégrées de PHP json_decode()配合json_last_error_msg() pour résoudre ce problème.

$json_string = '{"中文": "这是一个中文字符串"}';
$array = json_decode($json_string, true);

if (json_last_error() === JSON_ERROR_UTF8) {
    $json_string = mb_convert_encoding($json_string, 'UTF-8', 'UTF-8');
    $array = json_decode($json_string, true);
}

echo $array['中文']; // 输出:这是一个中文字符串
Copier après la connexion
  1. Il existe plusieurs niveaux d'imbrication dans la chaîne JSON

Lorsqu'il existe plusieurs niveaux d'imbrication dans les données JSON, vous pouvez utiliser la méthode récursive pour convertir le JSON en un tableau multidimensionnel. Comme indiqué ci-dessous :

$json_string = '{
  "name": "John",
  "age": 30,
  "city": "New York",
  "children": [
    {
      "name": "Mary",
      "age": 5
    },
    {
      "name": "Bob",
      "age": 3
    }
  ]
}';
$array = json_decode($json_string, true);

function json_to_array($data) {
    if (is_object($data)) {
        $data = get_object_vars($data);
    }
    if (is_array($data)) {
        return array_map(__FUNCTION__, $data);
    } else {
        return $data;
    }
}

$array = json_to_array($array);

print_r($array); // 输出:
/*
Array
(
    [name] => John
    [age] => 30
    [city] => New York
    [children] => Array
        (
            [0] => Array
                (
                    [name] => Mary
                    [age] => 5
                )

            [1] => Array
                (
                    [name] => Bob
                    [age] => 3
                )

        )

)
*/
Copier après la connexion

Dans cet article, nous avons présenté plusieurs méthodes pour convertir JSON en tableau. Qu'il s'agisse d'une simple chaîne JSON ou de données JSON imbriquées multicouches, la fonction json_decode() de PHP peut très bien accomplir la tâche d'analyse. J'espère que cet article pourra vous aider à mieux utiliser PHP pour traiter les données 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 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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)