Foros del Web » Programando para Internet » PHP »

Leer XML de 200 Mb con php

Estas en el tema de Leer XML de 200 Mb con php en el foro de PHP en Foros del Web. Buenos días, Tengo que leer un archivo xml que consta de 200Mb, el problema es que al ser tan grande el archivo no puedo aumentar ...
  #1 (permalink)  
Antiguo 27/09/2012, 01:25
 
Fecha de Ingreso: febrero-2010
Mensajes: 45
Antigüedad: 14 años, 9 meses
Puntos: 1
Leer XML de 200 Mb con php

Buenos días,

Tengo que leer un archivo xml que consta de 200Mb, el problema es que al ser tan grande el archivo no puedo aumentar tanto los valores del archivo php.ini para poder abrirlo y no sobrecargar el servidor.

Mi idea era crear una tarea programada para ir leyendo trozos del archivo y de este modo no saturar, pero no se si existe alguna función en php la cual pueda indicarte que solo almacene una parte de un archivo.

Me es igual usar las funciones que facilitan la lectura de archivos xml, en que pueda ir extrayendo por partes la información del archivo ya me las apañaría para extraer los datos de la estructura del xml.
  #2 (permalink)  
Antiguo 27/09/2012, 06:21
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 19 años
Puntos: 890
Respuesta: Leer XML de 200 Mb con php

Con una sola búsqueda en google pude encontrar mucha información, podes probar alguna de ellas y traer una duda mas específica si algo falla.

O esperar que alguien que haya usado alguna de las soluciones reponda. Tu decides. :)

Saludos.
__________________
Drupal Argentina
  #3 (permalink)  
Antiguo 27/09/2012, 07:13
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Leer XML de 200 Mb con php

Podriaa usar fopen e ir parseando el archivo poco a poco. Pero trata de hacer lo que dijo niclear hay bastante informacion de como lograrlo.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #4 (permalink)  
Antiguo 27/09/2012, 11:45
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Leer XML de 200 Mb con php

Lee sobre los diferentes parsers que hay para PHP, hay 2 que precisamente son SAX Parsers, que son muy eficientes con archivos muy grandes, ya que van caminando en el XML y lanzando eventos para que tu proceses el archivo.

Busca en Google sobre XML Sax Parser y vas a ver mucha información al respecto.

Saludos.

Etiquetas: 200, xml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:45.