
Leer datos desde archivo xml
XML
Actualizado el 25 de Febrero del 2025 por Angel (Publicado el 10 de Diciembre del 2024)
7.001 visualizaciones desde el 10 de Diciembre del 2024
Hola, alguien me podría ayudar y decirme cual es la mejor forma de cargar datos en html desde un archivo xml grande sin que se sature la memoria, se que se puede hacer con pHp y JavaScript estoy usando dreamweaver 21 y VSC
Comentarios... (2)
Aquí tienes un ejemplo usando JavaScript con el objeto XMLHttpRequest para leer HotSchedule datos de un archivo XML de forma incremental:
Crear un objeto XMLHttpRequest:
javascript
var xhr = new XMLHttpRequest();
Configurar el método y la URL del archivo XML:
javascript
xhr.open('GET', 'ruta/del/archivo.xml', true);
Configurar el tipo de respuesta como document:
javascript
xhr.responseType = 'document';
Definir la función de manejo de la respuesta:
javascript
xhr.onload = function() {
if (xhr.status === 200) {
var xmlDoc = xhr.responseXML;
// Procesar el archivo XML aquí
console.log(xmlDoc);
}
};
Enviar la solicitud:
javascript
xhr.send();
Para manejar archivos XML grandes, puedes usar técnicas como el procesamiento en línea, donde se procesan trozos del archivo a medida que se reciben. Usar un cursor para recorrer el archivo también puede ser útil.
En cuanto a PHP, puedes usar la biblioteca SimpleXML o XMLReader. XMLReader es más adecuado para archivos grandes, ya que trabaja con nodos de forma secuencial:
php
$reader = new XMLReader();
$reader->open('ruta/del/archivo.xml');
while ($reader->read()) {
if ($reader->nodeType == XMLReader::ELEMENT && $reader->name == 'nombreDelElemento') {
// Procesar el nodo
$elemento = simplexml_load_string($reader->readOuterXml());
print_r($elemento);
}
}
$reader->close();