Comment convertir json en tableau en php
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.
- 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" }';
Convertissez cette chaîne JSON en un tableau associatif en appelant la fonction json_decode() :
$array = json_decode($json_string, true);
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
- 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['中文']; // 输出:这是一个中文字符串
- 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 ) ) ) */
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

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 !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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