xml2array
xml2array es un función hecha en PHP que nos permitirá convertir datos en formato XML a un array.


[ad#adsense-1]
Obteniendo la función
Puedes descargar esta función desde la web del autor de xml2array y guardar el código en un archivo llamado xml2array.php

Utilizando xml2array
Para utilizar esta función, pasamos como parámetro una cadena que contiene el XML y lo retornará en un array.

Archivo demo.xml
[xml]

nokia
siemens
samsung
lg

[/xml]

Archivo sample.php
[php]
require(«xml2array.php»);
$contents = file_get_contents(‘demo.xml’);
$result = xml2array($contents);
print_r($result);
[/php]

El resultado de este código es:
[php]
Array
(
[lang] => Array
(
[attr] => Array
(
[type] => moviles
)
[name] => Array
(
[0] => Array
(
[value] => nokia
[attr] => Array ( [id] => 1 )
)
[1] => Array
(
[value] => siemens
[attr] => Array ( [id] => 2 )
)
[2] => Array
(
[value] => samsung
[attr] => Array ( [id] => 3 )
)
[3] => Array
(
[value] => lg
[attr] => Array ( [id] => 4 )
)
)
)
)
[/php]

Entonces si deseamos conocer cuales son los valores de los móviles con sus respectivos identificadores, haríamos lo siguiente:
[php]
require(«xml2array.php»);
$contents = file_get_contents(‘demo.xml’);
$result = xml2array($contents);
$langs = $result[‘lang’][‘name’];
for ($i=0; $i< count ($langs); $i++) {
echo $langs[$i]['attr']['id']." – ".$langs[$i]['value'];
}
[/php]

Una vez que esta convertido el XML en array es sencillo recorrer la información contenida en el.

Actualizado

Código fuente de xml2array.php


3 comentarios

Francisco · 7 enero 2010 a las 7:28

para obtener la función xml2array solo copio el contenido en un php? hasta ahora envia unos errores de encabezado

    sati · 7 enero 2010 a las 19:07

    Si asi es, aún así he puesto xml2array en un txt para poder verlo mejor.

    ¿Que error de cabecera te da?

Saber el tiempo con PHP y Google | Blog de sati · 11 diciembre 2009 a las 18:21

[…] Utilizando PHP para mostrar los datos Ahora que ya sabes como obtener los datos los cargamos utilizando la función file_get_contents y despues los convertimos en un array utilizando xml2array. […]

Responder a sati Cancelar la respuesta

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

63  +    =  67