(PHP 5, PHP 7, PHP 8)
simplexml_load_file — Interpreta un fichero XML en un objeto
$filename
,$class_name
= "SimpleXMLElement",$options
= 0,$ns
= "",$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ámetroa
de la URI, hay que llamar asimplexml_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
.
Devuelve un object de tipo SimpleXMLElement cuyas propiedades contienen los datos del documento XML, o false
en caso de error.
Esta función puede devolver el valor booleano false
, pero también puede devolver un valor no booleano que se evalúa como false
. Por favor lea la sección sobre Booleanos para más información. Use el operador === para comprobar el valor devuelto por esta función.
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.
Versión | Descripción |
---|---|
5.2.0 | Se añadió el parámetro opcional is_prefix . |
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.