Foros del Web » Programando para Internet » PHP »

Leer ficero de texto

Estas en el tema de Leer ficero de texto en el foro de PHP en Foros del Web. Hola Grupo: No se como hacer lo siguiente: Tengo un fichero de texto con una serie de datos y lo que quiero es leerlos para ...
  #1 (permalink)  
Antiguo 22/09/2004, 03:26
Avatar de jmfp26  
Fecha de Ingreso: diciembre-2003
Mensajes: 162
Antigüedad: 14 años
Puntos: 2
Leer ficero de texto

Hola Grupo:

No se como hacer lo siguiente:

Tengo un fichero de texto con una serie de datos y lo que quiero es leerlos para luego insertarlos en una base de datos. El insertarlos se como hacerlo pero antes tengo que quitar el punto y coma de separacion entre los datos, y tambien el concatenar algunos campos antes, como por ejemplo el nombre tiene que ser uno solo( nombre + apellido).

Lo que hago es lo siguiente:

<?php
#Abrimos el fichero en modo lectura
$dfdirecto = fopen("/home/public_html/datos.csv","r");

#Hasta que no lleguemos al final del fichero
while(!feof($dfdirecto)){

#Capturamos 4096 caracteres dentro de la línea,
#o menos si hay un retorno de carro antes
#(\r\n en Win32, \r en UNIX)
$buffer = fgets($dfdirecto,4096);

#Mostramos el texto, añadiendo <BR> detrás
# echo "<font face='Courier'>".$buffer."<br>"."</font>"."<br>";
# echo $buffer."<br>";
echo nl2br($buffer);
}
echo "<br>";

?>


El resultado es el siguiente:

1001;ANTONIO ;ORTEGA ;PEREZ ;25/02/72;AV ;LARIOS ;1;B ;B ;MADRID ;28023

Lo que quiero es que me quede una tabla como la siguiente:

Codigo Nombre Apellidos Fecha nacimiento Direccion Población C.P

Donde habia 12 campos que me lo deje en 7 campos.

Un Saludo
Gracias
  #2 (permalink)  
Antiguo 22/09/2004, 04:07
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

fgetcsv() (www.php.net/fgetcsv), asi podras leer los campos de cada linea del fichero y tratarlos como necesites.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 18:43.