SimpleXML carga un archivo XML en memoria como una estructura similar a un array. A los atributos de una etiqueta se accede con la notación de array asociativo y al contenido de un nodo con la notación ->
Ejemplo:
El señor de los anillos
Tolkien
El fin de la infancia
Clark
Parsear este XML es trivial:
<?php
$libros = simplexml_load_file('libros.xml');
foreach ($libros->libro as $libro) {
echo sprintf("Libro nº %s: Título: %s Autor: %s",
(string)$libro['id'],
(string)$libro->titulo,
(string)$libro->autor);
}
?>
El forzar la conversión de cada valor a string no es superfluo: si no se hace esto lo que obtenemos es otro objeto SimpleXML anidado al "padre" en vez del contenido del atributo o del nodo.
Otro uso posible es el parseo de HTML. Para garantizarnos que el HTML de origen está bien formado, conviene pasarle antes un tidy:
tidy -asxhtml -clean -numeric fichero.html
No hay comentarios:
Publicar un comentario