


Application PHP : utiliser des fonctions pour convertir XML au format JSON
Avec le développement continu de la technologie Internet, le traitement des données est devenu un élément indispensable du développement d'applications Internet. XML et JSON sont également devenus les deux formats d'échange de données les plus couramment utilisés. Cependant, au cours du processus de développement de l'application, nous avons constaté que PHP prend en charge l'analyse du format XML par défaut, mais que sa prise en charge du format JSON est relativement limitée. Par conséquent, cet article expliquera comment utiliser PHP pour écrire des fonctions permettant de convertir des données au format XML en données au format JSON.
1. Aperçu des exigences
Dans le processus de développement d'applications actuel, nous devons convertir les données au format XML en données au format JSON pour réaliser le partage, l'échange et d'autres fonctions de données. Plus précisément, nous devons analyser les données XML d'origine, les convertir en un tableau associatif PHP, puis convertir le tableau en données au format JSON et le transmettre au client.
2. Solution
Afin de répondre aux exigences ci-dessus, nous devons mettre en œuvre les trois étapes suivantes :
1. Analyser les données XML
Utilisez la fonction intégrée de PHP simplexml_load_string() pour convertir les données au format XML en objets PHP. (objet ). La syntaxe de cette fonction est la suivante :
mixed simplexml_load_string ( string $data [, string $class_name = "SimpleXMLElement" [, int $options = 0 [, string $ns = "" [, bool $is_prefix = false ]]]] )
Parmi eux, le paramètre $data représente la chaîne XML qui doit être analysée, et la valeur de retour est l'objet analysé. Lors de l'analyse des données XML, nous devons garantir l'exactitude des données. Par conséquent, la fonction simplexml_load_string() peut être encapsulée dans une fonction check_xml() pour vérifier si les données XML sont légales.
function check_xml($xml_str) { $obj = @simplexml_load_string($xml_str); if ($obj === false) { return false; } return true; }
2. Convertir les données XML en tableau PHP
Après avoir analysé les données au format XML, nous devons les convertir en tableau PHP. Afin de convertir un objet en tableau, vous pouvez utiliser la fonction objectToArray() en PHP.
function objectToArray($object) { $arr = is_object($object) ? get_object_vars($object) : $object; if (is_array($arr)) { return array_map(__FUNCTION__, $arr); } else { return $arr; } }
Combinée avec la fonction check_xml() précédente, la fonction convert_xml_to_array() peut être encapsulée comme suit :
function convert_xml_to_array($xml_str) { $obj = @simplexml_load_string($xml_str); if ($obj === false) { return false; } $arr = objectToArray($obj); return $arr; }
3. Convertir le tableau PHP en données au format JSON
La dernière étape consiste à convertir le tableau PHP au format JSON. données. En PHP, vous pouvez utiliser la fonction json_encode() pour convertir facilement des tableaux PHP en données au format JSON. La syntaxe est la suivante :
string json_encode ( mixed $value [, int $options = 0 [, int $depth = 512 ]] )
Le paramètre $value représente le tableau PHP qui doit être converti en données au format JSON, et la valeur de retour est une chaîne au format JSON. Afin de faciliter l'encapsulation, nous pouvons définir la fonction convert_array_to_json() comme suit :
function convert_array_to_json($arr) { $json = json_encode($arr, JSON_UNESCAPED_UNICODE); return $json; }
3. Code complet
En résumé, nous pouvons encapsuler les trois étapes ci-dessus dans une fonction complète convert_xml_to_json(), le code est le suivant :
function convert_xml_to_json($xml_str) { $arr = convert_xml_to_array($xml_str); if ($arr === false) { return false; } $json = convert_array_to_json($arr); return $json; } function check_xml($xml_str) { $obj = @simplexml_load_string($xml_str); if ($obj === false) { return false; } return true; } function convert_xml_to_array($xml_str) { $obj = @simplexml_load_string($xml_str); if ($obj === false) { return false; } $arr = objectToArray($obj); return $arr; } function convert_array_to_json($arr) { $json = json_encode($arr, JSON_UNESCAPED_UNICODE); return $json; } function objectToArray($object) { $arr = is_object($object) ? get_object_vars($object) : $object; if (is_array($arr)) { return array_map(__FUNCTION__, $arr); } else { return $arr; } }
4. Exemples d'utilisation
Les exemples d'utilisation sont les suivants :
$xml_str = <<<XML <?xml version="1.0" encoding="UTF-8"?> <xml> <name>张三</name> <age>20</age> <gender>男</gender> <education> <degree>学士</degree> <school>清华大学</school> </education> <education> <degree>硕士</degree> <school>北京大学</school> </education> </xml> XML; if (check_xml($xml_str)) { $json = convert_xml_to_json($xml_str); echo "JSON: {$json}"; } else { echo "XML数据不合法"; }
Les résultats d'exécution sont les suivants :
JSON: {"name":"u5f20u4e09","age":"20","gender":"u7537","education":[{"degree":"u5b66u58eb","school":"u6e05u534eu5927u5b66"},{"degree":"u7855u58eb","school":"u5317u4eacu5927u5b66"}]}
5. Résumé
Dans cet article, nous avons présenté comment utiliser PHP pour écrire des fonctions pour convertir du XML. formater les données au format JSON. En utilisant simplexml_load_string() pour analyser les données XML, objectToArray() pour convertir des objets PHP en tableaux PHP et json_encode() pour convertir des tableaux PHP en données au format JSON, nous pouvons rapidement et facilement implémenter la conversion de format de données et développer des applications pratiques. être appliqué pour améliorer l’évolutivité et la facilité d’utilisation du programme.
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

AI Hentai Generator
Générez AI Hentai gratuitement.

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)

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

CakePHP est un framework MVC open source. Cela facilite grandement le développement, le déploiement et la maintenance des applications. CakePHP dispose d'un certain nombre de bibliothèques pour réduire la surcharge des tâches les plus courantes.

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et
