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

Comment convertir XML en tableau en php

青灯夜游
Libérer: 2023-03-08 09:04:01
original
3398 Les gens l'ont consulté

Méthode : utilisez d'abord simplexml_load_string() pour convertir la chaîne XML en un objet SimpleXMLElement ; puis utilisez json_encode() pour convertir l'objet en données JSON ; enfin, utilisez json_decode() pour convertir les données JSON en tableau.

Comment convertir XML en tableau en php

L'environnement d'exploitation de ce tutoriel : système windows7, version PHP7.1, ordinateur DELL G3

php convert xml Pour le numéro de tableau

1. Fonction : La fonction

/*
@desc:xml转数组
@param data xml字符串
@return arr 解析出的数组
*/
function xmltoarray($data){
$obj = simplexml_load_string($data, 'SimpleXMLElement', LIBXML_NOCDATA);
$json = json_encode($obj);
$arr = json_decode($json, true);      
return $arr;
}
Copier après la connexion

simplexml_load_string() convertit une chaîne XML bien formée en un objet SimpleXMLElement.

json_encode() est utilisé pour encoder des variables JSON. Cette fonction renvoie des données JSON si elle est exécutée avec succès, sinon elle renvoie FALSE.

La fonction json_decode() est utilisée pour décoder une chaîne au format JSON et la convertir en variable PHP (objet ou tableau).

json_decode ($json_string [,$assoc = false [, $depth = 512 [, $options = 0 ]]])
Copier après la connexion

Paramètres

  • json_string : chaîne JSON à décoder, doit être des données codées en UTF-8

  • assoc : lorsque ce paramètre est TRUE, un tableau est renvoyé, et lorsqu'il est FALSE, un objet est renvoyé.

  • profondeur : paramètre de type entier, qui précise la profondeur de récursion.

  • options : masque binaire, actuellement seul JSON_BIGINT_AS_STRING est pris en charge.

2. Test :

a Code :

<?php
$string = <<<XML
<?xml version=&#39;1.0&#39;?> 
<document>
<title>Forty What?</title>
<from>Joe</from>
<to>Jane</to>
<body>
I know that&#39;s the answer -- but what&#39;s the question?
</body>
</document>
XML;
$arr = xmltoarray($string);
var_dump($arr);
Copier après la connexion

b.

Pour plus de connaissances sur la programmation, veuillez visiter :

Vidéo de programmation ! !

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal