(PHP 5, PHP 7)
simplexml_load_file — Interpreta un fichero XML en un objeto
$filename
[, string $class_name
= "SimpleXMLElement"
[, int $options
= 0
[, string $ns
= ""
[, bool $is_prefix
= false
]]]] )Convierte el documento correcto XML del fichero dado en un objeto.
filename
Ruta al fichero XML
Nota:
Libxml 2 no escapa la URI, así que si es necesario pasar, por ejemplo b&c, como parámetro a de la URI, hay que llamar a simplexml_load_file(rawurlencode('http://example.com/?a=' . urlencode('b&c'))). Desde PHP 5.1.0 no es necesario hacer esto porque PHP lo hará automáticamente.
class_name
Este parámetro opcional puede ser usado cuando se necesita que simplexml_load_file() retorne un objeto de la clase especificada. Esa clase debe extender de la clase SimpleXMLElement.
options
Desde PHP 5.1.0 y Libxml 2.6.0 puede usarse
options
para especificar parámetros Libxml adicionales.
ns
El prefijo del espacio de nombres o un URI.
is_prefix
TRUE
si ns
es un prefijo, FALSE
si es un URI;
por defecto es FALSE
.
Retorna un object de tipo SimpleXMLElement cuyas
propiedades contienen los datos del documento XML, o FALSE
en caso de error.
Produce un mensaje de error E_WARNING
para cada error
encontrado en los datos XML.
Usar libxml_use_internal_errors() para suprimir todos los errores XML y libxml_get_errors() para iterar sobre cada uno de ellos posteriormente.
Ejemplo #1 Interpreta un documento XML
<?php
// El fichero test.xml contiene un documento XML con un elemento raíz y, al
// menos, un elemento /[raiz]/titulo.
if (file_exists('test.xml')) {
$xml = simplexml_load_file('test.xml');
print_r($xml);
} else {
exit('Error abriendo test.xml.');
}
?>
Este script mostrará, si no hay errores:
SimpleXMLElement Object ( [titulo] => Título ejemplo ... )
En este punto, se puede seguir recorriendo usando $xml->titulo y cualquier otro elemento.