Le lundi 12 janvier 2009 à 14:51 -0500, José Luis Bazo Villasante a
écrit :
> muchas gracias, les voy contando... al final estoy viendo algo como esto:
> 
>         $myarray = file($uploadfile);
> 
>         $fecha                  =       substr($myarray[3],64,8);
>         $agencias               =       trim(substr($myarray[5],48,20));
>         $hbk                    =       trim(substr($myarray[7],48,20));
> 
> 
> ta bien??

La combinación de substring y de trim esta buena. Si tu formato no
cambia demasiado, debería ser bastante.

Las regexp son bastante potentes pero tal vez son un poco demasiado para
este caso todavía (depende de la flexibilidad de tus datos).

Suerte,

Yannick


> 
> 
> 2009/1/12 Yannick Warnier <[email protected]>:
> > Le lundi 12 janvier 2009 à 11:45 -0500, José Luis Bazo Villasante a
> > écrit :
> >> Hola muchachos...
> >>
> >> estoy haciendo un pequeño sistemita con PHP, resulta que diariamente
> >> me pasan unos reportes en archivo plano TXT, algo asi:
> >>
> >>        REPORTE DE TRANSACCIONES DIARIAS x CANAL         Fecha: 21-12-08
> >> -------------------------------------------------------------------------
> >>  1.- AGENCIAS                                  :       21434
> >>  2.- HOMEBANKING                               :      277458
> >>  3.- CAJEROS                                   :      282364
> >>  4.- TRANSACCIONES_FROM_HOST-CAJEROS           :      137626
> >>  5.- COMUNICATE                                :       15332
> >>  6.- SALDOMATICO                               :       10776
> >>    -> ANTIGUO_SALDOMATICO                     :          66
> >>    -> NUEVO_SALDOMATICO-MQ                    :       10710
> >> -------------------------------------------------------------------------
> >>
> >> Necesito sacar diferentes datos, como la Fecha y los valores de cada
> >> uno de los campos del 1 al 6 e incluso de los subgrupos del punto 6...
> >>
> >> todo esto para subirlo a un mysql y luego poder leer los datos via web
> >> y generar unos graficos...
> >>
> >> me pueden dar ejemplos de como sacar los valores de los numeros? ya
> >> que siempre el numeor de lineas se mantiene... pero el valor varia de
> >> 0 a 100000
> >>
> >> recomiendan utilizar "fgets" o "file_get_contents"
> >>
> >> no hay alguna funcion en la cual le pueda dar el numero de linea y las
> >> posiciones inicial y final y me traiga ese valor??
> >
> > Hola José,
> >
> > No existe tal función "predefinida" en PHP, pero hay varias cosas que te
> > podrían ayudar.
> >
> > Primero, la funcción file() te permite de recuperar un archivo dentro de
> > una tabla.
> > Dependiendo de como "fijo" es tu fichero, podrías hacer algo como eso:
> >
> > $lineas = @file('mifichero.txt');
> > if ($lineas === false) { die("Error de lectura de fichero"); }
> > $max = count($lineas); // numero de lineas total de tu fichero
> > $resultado = array(); //arreglo final donde van los resultados
> > $j = 1;
> > for ($i=2;$i<$max;$i++) { //empezamos a 2 para ignorar titulo
> >  $match = array(); //ahi se ponen los resultados de preg_match
> >  $res = preg_match('/^(\d).->?\ ([^\ ]+)[^0-9]([0-9]+)/',$lineas[$i],
> > $match);
> >  if ($res !== false) { $resultado[$match[1]] =
> > array('nombre'=>$match[2],'valor'=>$match[3]); }
> > }
> >
> > Algo así. Bueno, tienes que mejorarlo un poco en particular para tu
> > últimas líneas (tendras que cambiar la expresión regular o mejorarla).
> >
> > Yannick
> >
> >
> > _______________________________________________
> > Lista de correo Linux-plug
> > Temática: Discusión general sobre Linux
> > Peruvian Linux User Group (http://www.linux.org.pe)
> >
> > Participa suscribiéndote y escribiendo a:  [email protected]
> > Para darte de alta, de baja  o hacer ajustes a tu suscripción visita:
> > http://listas.linux.org.pe/mailman/listinfo/linux-plug
> >
> > IMPORTANTE: Reglas y recomendaciones
> > http://www.linux.org.pe/listas/reglas.php
> > http://www.linux.org.pe/listas/comportamiento.php
> > http://www.linux.org.pe/listas/recomendaciones.php
> >
> _______________________________________________
> Lista de correo Linux-plug
> Temática: Discusión general sobre Linux
> Peruvian Linux User Group (http://www.linux.org.pe)
> 
> Participa suscribiéndote y escribiendo a:  [email protected]
> Para darte de alta, de baja  o hacer ajustes a tu suscripción visita:
> http://listas.linux.org.pe/mailman/listinfo/linux-plug
> 
> IMPORTANTE: Reglas y recomendaciones
> http://www.linux.org.pe/listas/reglas.php
> http://www.linux.org.pe/listas/comportamiento.php
> http://www.linux.org.pe/listas/recomendaciones.php

_______________________________________________
Lista de correo Linux-plug
Temática: Discusión general sobre Linux
Peruvian Linux User Group (http://www.linux.org.pe)

Participa suscribiéndote y escribiendo a:  [email protected]
Para darte de alta, de baja  o hacer ajustes a tu suscripción visita:
http://listas.linux.org.pe/mailman/listinfo/linux-plug

IMPORTANTE: Reglas y recomendaciones
http://www.linux.org.pe/listas/reglas.php
http://www.linux.org.pe/listas/comportamiento.php
http://www.linux.org.pe/listas/recomendaciones.php

Responder a