xml2array: PHP XML Parser
- 30/11/2008
- 5:41 pm
xml2array es un función escrita en PHP que nos permitirá convertir rápidamente datos en formato XML a un array con lo cual será sencillo acceder a cada una de sus propiedades y atributos. Esta función es especialmente útil en PHP4 pues no contiene métodos sencillos para la manipulación de XML como si lo tiene PHP5.
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");
-
$result = xml2array($contents);
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.
-
<?xml version="1.0" encoding="iso-8859-1"?>
-
<lang type="interpreted">
-
<name id="1">PHP</name>
-
<name id="2">Python</name>
-
<name id="3">JSP</name>
-
<name id="4">Ruby</name>
-
</lang>
Luego de utilizar esta función los datos se encuentran formateados de la siguiente forma:
-
(
-
(
-
(
-
[type] => interpreted
-
)
-
(
-
(
-
[value] => PHP
-
)
-
(
-
[value] => Python
-
)
-
(
-
[value] => JSP
-
)
-
(
-
[value] => Ruby
-
)
-
)
-
)
-
)
Entonces si deseamos conocer cuales son los valores de los lenguajes con sus respectivos identificadores, tendríamos:
-
require("xml2array.php");
-
$result = xml2array($contents);
-
-
$langs = $result['lang']['name'];
-
for ($i=0; $i<sizeof($langs); $i++) {
-
}
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.
Posts Relacionados
- IP Location con PHP
- Crear Buscador de MP3
- Online JSON Parser
- SimplePie: Parser RSS o Atom
- Tutorial de SimplePie
Total de Comentarios: 6
hola, ante todo gracias por el script me fue muy util.
bueno ahora tengo una duda quisiera que al momento de leer un archivo xml por ejemplo el de un reproductor de audio donde alli se se tiene la url completa del audio, bueno como bien saben que la mayoria lo cambia el formato de mp3 a otro(por ejemplo brs,swf,..etc), bueno ahora quisiera que al momento de descagar el audio se convierta a un formato mp3(al original) para asi poder descargar los audios desde un archivo xml.
me refiero a esto, osea los cambian de formato pero en si sigue siendo un formato mp3
[...] son devueltos como XML utilizaremos la clase xml2array del cual hemos comentado anteriormente en: xml2array: PHP XML Parser. [...]
Buenas!…esa funcion usa muchos recursos, prefiero usar
simplexml_load_file() (http://php.net/function.simplexml-load-file.php) para trabajar con xml, es genial y devuelve un objeto. Saludos!
[...] PHP Como el resultado es un XML podríamos utilizar la función xml2array de la cual comentamos en xml2array: PHP XML Parser, entonces tendríamos el siguiente código para leer los datos del [...]
[...] PHP Como el resultado es un XML podríamos utilizar la función xml2array de la cual comentamos en xml2array: PHP XML Parser, entonces tendríamos el siguiente código para leer los datos del [...]

