<?php function xml2array($contents, $get_attributes = 1, $priority = 'tag') { if (!$contents) return array(); if (!function_exists('xml_parser_create')) { // print "'xml_parser_create()' function not found!"; return array(); } // Get the XML parser of PHP - PHP must have this module for the parser to work $parser = xml_parser_create(''); xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, "UTF-8"); // http://minutillo.com/steve/weblog/2004/6/17/php-xml-and-character-encodings-a-tale-of-sadness-rage-and-data-loss xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0); xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1); xml_parse_into_struct($parser, trim($contents), $xml_values); xml_parser_free($parser); if (!$xml_values) return; //Hmm... // Initializations $xml_array = array(); $parents = array(); $opened_tags = array(); $arr = array(); $current = &$xml_array; //Refference // Go through the tags. $repeated_tag_index = array(); //Multiple tags with same name will be turned into an array foreach($xml_values as $data) { unset($attributes, $value); //Remove existing values, or there will be trouble // This command will extract these variables into the foreach scope // tag(string), type(string), level(int), attributes(array). extract($data); //We could use the array by itself, but this cooler. $result = array(); $attributes_data = array(); if (isset($value)) { if ($priority == 'tag') $result = $value; else $result['value'] = $value; //Put the value in a assoc array if we are in the 'Attribute' mode }
Il s'agit d'une bibliothèque de classes qui peut convertir entre les formats XML et de données. Les amis qui en ont besoin peuvent la télécharger et l'utiliser.
Toutes les ressources de ce site proviennent d'internautes ou sont réimprimées par les principaux sites de téléchargement. Veuillez vérifier vous-même l'intégrité du logiciel?! Toutes les ressources de ce site sont uniquement à titre de référence d'apprentissage. Merci de ne pas les utiliser à des fins commerciales. Sinon, vous serez responsable de toutes les conséquences ! En cas d'infraction, veuillez nous contacter pour la supprimer. Coordonnées : admin@php.cn
Article connexe

27 Aug 2025
Cet article introduit une méthode efficace pour convertir dynamiquement les valeurs de réseau des types de cha?nes en leurs types de données correspondants (tels que les entiers, les nombres de points flottants et les valeurs booléennes) en PHP. En réponse au problème de la conversion manuelle inefficace lors du traitement de grandes quantités de données dynamiques, des compétences pratiques sont fournies pour utiliser JSON_ENCODE combinée avec JSON_NUMERIC_CHECK et FILTER_VAR Les fonctions pour le type d'inférence et de conversion, et les avantages et les inconvénients de différentes solutions sont comparés, visant à aider les développeurs à choisir la solution la plus appropriée pour leurs propres scénarios et à améliorer l'efficacité de traitement des données.

01 Sep 2025
Cet article vise à résoudre le problème de la fa?on de convertir des valeurs spécifiques frontales (telles que ?0? et ?3?) en texte lisible par back-end (tel que ?non? et ?oui?) dans le traitement de formulaire PHP. L'article analyse en détail l'utilisation abusive de l'ISSet dans ce scénario et fournit une méthode de conversion correcte basée sur une comparaison de valeur stricte. Dans le même temps, les meilleures pratiques de séparation des responsabilités à l'avant et à l'arrière sont soulignées, et il est recommandé de traiter de manière centralisée la logique métier du c?té serveur pour améliorer la maintenabilité et l'évolutivité du code.

08 Nov 2024
Récupération de la sortie d'une base de données MySQL au format XML en PHPPour récupérer la sortie XML d'une base de données MySQL contenant des colonnes spécifiques, suivez ces étapes en utilisant...

28 Oct 2024
Récupérez les réponses XML avec PHP cURL et extrayez les données efficacementLorsque vous utilisez PHP cURL pour interagir avec des serveurs, il est courant de recevoir du XML...

27 Aug 2025
Cet article décrit comment utiliser la bibliothèque PHP Guzzle pour envoyer des demandes HTTP et extraire les données requises de la réponse XML. Il se concentre sur la fa?on de traiter les données XML contenant des espaces de noms et fournit un exemple de code pour analyser les données XML à l'aide de SimplexMlelement pour aider les développeurs à extraire rapidement et efficacement des champs spécifiques dans les données XML.

12 Dec 2024
Utilisation de XMLReader dans PHPXMLReader est une extension PHP qui fournit un moyen efficace de parcourir et de lire des documents XML. Il permet une progression incrémentielle...


Outils chauds Tags

Outils chauds

Une collection de 50 excellents algorithmes PHP classiques
Algorithme PHP classique, apprenez d'excellentes idées et élargissez votre réflexion

Bibliothèque PHP pour les conteneurs d'injection de dépendances
Bibliothèque PHP pour les conteneurs d'injection de dépendances

Petite bibliothèque PHP pour optimiser les images
Petite bibliothèque PHP pour optimiser les images
