Obteniendo la función
Para descargar esta función, es necesario acceder a la web del autor de xml2array, copiar el código allí mostrado en un archivo llamado xml2array.php o al archivo donde estén nuestras funciones.
Utilizando xml2array
Luego para utilizar esta función le pasamos como parámetro un texto que contiene el XML y lo devolverá automáticamente en array, entonces si queremos acceder a un archivo que contiene el XML utilizaremos la función file_get_contents previamente.
- require("xml2array.php");
- $contents = file_get_contents('demo.xml');
- $result = xml2array($contents);
- print_r($result);
Nótese que hemos utilizado print_r, el cual imprime un array tabulado para facilitar la lectura. Veamos un ejemplo práctico de como se accede a los datos utilizando esta función.
Luego de utilizar esta función los datos se encuentran formateados de la siguiente forma:
<"lang type="interpreted""> PHP Python JSP Ruby
Array
(
[lang] => Array
(
[attr] => Array
(
[type] => interpreted
)
[name] => Array
(
[0] => Array
(
[value] => PHP
[attr] => Array ( [id] => 1 )
)
[1] => Array
(
[value] => Python
[attr] => Array ( [id] => 2 )
)
[2] => Array
(
[value] => JSP
[attr] => Array ( [id] => 3 )
)
[3] => Array
(
[value] => Ruby
[attr] => Array ( [id] => 4 )
)
)
)
)
Entonces si deseamos conocer cuales son los valores de los lenguajes con sus respectivos identificadores, tendríamos:
require("xml2array.php");
$contents = file_get_contents('data.xml');
$result = xml2array($contents);
$langs = $result['lang']['name'];
for ($i=0; $i < sizeof($langs); $i++) { echo $langs[$i]['attr']['id']." - ".$langs[$i]['value']; } sizeof($langs); Pueden ver el ejemplo funcionando en xml2array/index.php y el XML original el xml2array/data.xml. Como pueden ver una vez que esta convertido en XML es sencillo recorrer la información contenida en el array.
No hay comentarios:
Publicar un comentario