Foros del Web » Programando para Internet » PHP »

Datos de un TXT y PHP

Estas en el tema de Datos de un TXT y PHP en el foro de PHP en Foros del Web. Estimados: Tengo un archivo de texto el cual logré abrir, recorrer y obtener las líneas que lo componen con el siguiente registro: "20", "Perico los ...
  #1 (permalink)  
Antiguo 15/08/2010, 11:55
 
Fecha de Ingreso: agosto-2009
Mensajes: 6
Antigüedad: 14 años, 8 meses
Puntos: 0
Datos de un TXT y PHP

Estimados:

Tengo un archivo de texto el cual logré abrir, recorrer y obtener las líneas que lo componen con el siguiente registro:

"20", "Perico los palotes", "C45", "La Paz"

La dificultad que tengo ahora es poder tomar cada valor que está encerrado entre comillas y poder asignarle variables para trabajarlas de forma independiente.

Cualquier ayuda es bien recibida. Gracias
  #2 (permalink)  
Antiguo 15/08/2010, 12:01
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Datos de un TXT y PHP

puedes usar expresiones regulares:
http://www.forosdelweb.com/f18/aport...s-pcre-646110/

o funciones para cadenas de texto:
http://php.net/manual/en/book.strings.php
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 15/08/2010, 13:29
 
Fecha de Ingreso: diciembre-2007
Mensajes: 467
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: Datos de un TXT y PHP

Tarso:

Utilizá la recomendación del otro forero. Necesitás usar funciones de cadena. Creo que lo mejor sería primero cortar la cadena usando las comas como carácter de referencia y luego las comillas.
Si no tenés práctica con el uso de funciones de cadena me avisás y tal vez te puedo armar un ejemplo.
Saludos.



Federico
  #4 (permalink)  
Antiguo 15/08/2010, 14:08
 
Fecha de Ingreso: agosto-2009
Mensajes: 6
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Datos de un TXT y PHP

Con ayuda de un amigo del mmug.cl me qudó más o menos así:

Archivo TXT:

"20", "Perico los palotes", "C45", "La Paz"
"21", "Eusopio Marambio", "C46", "Santiago"
"22", "Soila Bacca", "C47", "Buenos Aires"

Archivo PHP:

Código PHP:
Ver original
  1. <?php
  2. $archivo = "clientes.txt";
  3.  
  4. //Abro el fichero.
  5. $fichero = fopen($archivo, "r");
  6.  
  7. //Recorro el fichero de principio a fin.
  8. while(!feof($fichero)){
  9.    
  10.     //Recorro por linea.
  11.     $linea = fgets($fichero, 4096);
  12.    
  13.     //Separo el string por (,) y las convierto en arrays.
  14.     $datos = explode(",", $linea);
  15.    
  16.     //Reemplazo las comillas por espacios.
  17.     $datos = str_replace('"', " ", $datos);
  18.    
  19.     echo $datos[0]."<br />";
  20.  
  21. }//Fin while.
  22.  
  23. //Cierro el fichero.
  24. fclose($fichero);
  25. ?>

Me funciona aunque no se si se pueda mejorar.
  #5 (permalink)  
Antiguo 15/08/2010, 14:24
 
Fecha de Ingreso: diciembre-2007
Mensajes: 467
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: Datos de un TXT y PHP

Tarso:

La estructura general del código me parece perfecta pero, estás seguro de que funciona bien?
Explode no te carga la matriz con 4 elementos (0,1,2,3)? Entonces, ésta línea: echo $datos[0]."<br />"; no debería incluir los otros elementos de la matriz? $datos[1], $datos[2] y $datos[3]?
Saludos.


Federico
  #6 (permalink)  
Antiguo 15/08/2010, 14:27
 
Fecha de Ingreso: septiembre-2009
Mensajes: 68
Antigüedad: 14 años, 7 meses
Puntos: 4
Respuesta: Datos de un TXT y PHP

Bueno, si lo unico que querias era tener todos los valores de una linea metidos en variables (o un array) ya lo has conseguido, el codigo no creo que se pueda mejorar mucho mas, ahora ya depende de lo que quieras hacer con estos datos.
  #7 (permalink)  
Antiguo 15/08/2010, 16:12
 
Fecha de Ingreso: agosto-2009
Mensajes: 6
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Datos de un TXT y PHP

Cita:
Iniciado por fede1976 Ver Mensaje
Tarso:

La estructura general del código me parece perfecta pero, estás seguro de que funciona bien?
Explode no te carga la matriz con 4 elementos (0,1,2,3)? Entonces, ésta línea: echo $datos[0]."<br />"; no debería incluir los otros elementos de la matriz? $datos[1], $datos[2] y $datos[3]?
Saludos.


Federico

Estás en todo lo correcto @fede1976, lo que pasa es que puse solo $datos[0] para ejemplificar, pero como tu dices deberían estar todos.
  #8 (permalink)  
Antiguo 15/08/2010, 17:26
Avatar de gioramies  
Fecha de Ingreso: febrero-2008
Ubicación: Colombia
Mensajes: 217
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Datos de un TXT y PHP

Hola tarso.

Creo que me "desviaré" un poco del tema . Mencionas que lees la información de una archivo txt. No se si necesariamente la estructura del contenido de ese archivo debe ser así como lo has mostrado (en tu caso), pero si a lo mejor utilizas la notación JSON en ese archivo para estructurar la información, podrías trabajar rápida y fácilmente con ella, accediendo a cualquier dato que desees en un instante, así: print $misdatos->{'datos-especifico'}.

Para que veas que tan provechoso puede ser utilizan JSON (algunos preferirían XML ) pasate por este sitio, con un muy buen ejemplo. Junto con la pequeña pero suficiente documentación del manual de PHP.

Saludos a todos

Última edición por gioramies; 15/08/2010 a las 17:30 Razón: Agregar enlaces

Etiquetas: txt
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 12:57.