Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - chucky2183

#1
PHP / Re: Leer archivo grande y manipularlo
21 Diciembre 2015, 13:26 PM
Cita de: _Zume en 19 Diciembre 2015, 08:11 AM
Yo que tú paso todos los datos a una tabla y comienzo a compararlos desde MySQL, así tienes más libertad para tratarlos además y podrías utilizar el sscanf para filtrar los datos.

Seria lo ideal. Pero al leer el archivo se muere. Si intento insertar 1600000 tuplas en la DB, va a ser peor.

Aunque para serte sincero no entendí bien, tienes 1600000 lineas, y necesitas manipular solo 1600 ?

El funcionamiento es asi. Tengo 1600 proveedores cargados en la base de datos, y cada mes bajo un archivo de retenciones de la AFIP (Administracion Federal de Ingresos Publicos). El archivo que bajo pesa unos 100Mb y posee aproximadamente 1600000 lineas. En cada linea hay un proveedor (CUIT, % de RETENCION, y otros datos mas).



Tengo que actualizar el % de retencion en los 1600 proveedores que tengo en la base de datos. Cada 1 de los 1600 proveedores los tengo que comparar con el archivo.
_____________


Por cierto, yo hace meses quería sacar un montón de imágenes de una web (casi 10.000, y estaban ordenadas por números 1.jpg, 2.jpg, etc ..) y hice un código para copiar todas las  imágenes a un directorio pero tuve problema de sobre-carga, así que lo que hice fue pasarlo a un img lleno de todas las URL que habían con un bucle, y también tuve el problema, así que añadí un sleep(0.25); y lo logró, no sé si funcione.
#2
PHP / Leer archivo grande y manipularlo
18 Diciembre 2015, 18:39 PM
Hola. Tengo un archivo de texto grande de 100mb. El archivo posee 1600000 lineas, en cada linea hay un proveedor con sus porcentajes de impuestos. Necesito manipular 1600 proveedores que tengo en la DB y actualizar sus impuestos. Es decir los 1600 proveedores de la DB los tiene que comparar 1 a 1 con cada linea del archivo.

Intento solo leer el archivo e imprimirlos y se me muere el programa. Llega a procesar unos 7 minutos y medio y tira un error 500. Pero en el log de apache no aparece el error.

Hay alguna forma de leer el archivo por partes? Ya le subi los tiempos en los archivos de configuracion pero aun asi el programa muere.