Foros del Web » Programando para Internet » PHP »

Leer partes de un txt

Estas en el tema de Leer partes de un txt en el foro de PHP en Foros del Web. Hola todos, tengo este txt y me gustaría poder leer la parte de dia y las frutas y almacenarlas en un array, pero no consigo ...
  #1 (permalink)  
Antiguo 28/05/2009, 23:46
 
Fecha de Ingreso: mayo-2009
Ubicación: San Juan de Alicante
Mensajes: 9
Antigüedad: 15 años
Puntos: 0
Leer partes de un txt

Hola todos,

tengo este txt y me gustaría poder leer la parte de dia y las frutas y almacenarlas en un array, pero no consigo saber como llegar hasta la línea del primer día.

Gracias de antemano.

nada nada nada nada nada nada nada nada nada nada nada nada
nada nada nada nada nada nada nada nada nada nada nada nada
nada nada nada nada nada nada nada nada nada nada nada nada
nada nada nada nada nada nada nada nada nada nada nada nada

dia peras limones manzanas
2009-05-25 2 3 4
2009-05-26 0 6 3
2009-05-27 1 4 2
  #2 (permalink)  
Antiguo 28/05/2009, 23:52
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
Puntos: 1517
Respuesta: Leer partes de un txt

Código PHP:
$getArray file("texto.txt");

$firstPart false;
foreach(
$getArray as $k => $v){
  
$explodeArray explode(" "$v);
  if(
$explodeArray[0] == "dia"){
    
$firstPart true;
  }
  if(
$firstPart){
    echo 
$v;
  }


Me dejas saber
  #3 (permalink)  
Antiguo 29/05/2009, 10:01
 
Fecha de Ingreso: mayo-2009
Ubicación: San Juan de Alicante
Mensajes: 9
Antigüedad: 15 años
Puntos: 0
De acuerdo Respuesta: Leer partes de un txt

Decías...
Cita:
Iniciado por abimaelrc Ver Mensaje
Código PHP:
$getArray file("texto.txt");

$firstPart false;
foreach(
$getArray as $k => $v){
  
$explodeArray explode(" "$v);
  if(
$explodeArray[0] == "dia"){
    
$firstPart true;
  }
  if(
$firstPart){
    echo 
$v;
  }


Me dejas saber
Muchas gracias por tu codigo, el cual he implementado asi:
Código PHP:
<?php

$fichero 
fopen("texto.txt","r");
    
        while (
$lineafgets($fichero,1024)){
            
$texto explode("-"$linea);
              if(
$texto[0] == "2009"){
                echo 
$linea."<br>";                
              }
        }    
        
fclose($fichero);

?>
Abusando de tu sapiencia,
¿Cómo podría hacer para almacenar en un array la fecha, en otro las peras, en otro los limones...?

Gracias de antemano.

Última edición por jjsi; 29/05/2009 a las 12:39
  #4 (permalink)  
Antiguo 29/05/2009, 13:18
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
Puntos: 1517
Respuesta: Leer partes de un txt

luego que hayas logrado sacar las lineas de lo que tu quieres puedes explotar por un delimited me refiero segun a lo que tu escribiste

dia peras limones manzanas
2009-05-25 2 3 4
2009-05-26 0 6 3
2009-05-27 1 4 2

el delimited es el espacio por lo tanto haces esto

Código PHP:
while ($lineafgets($fichero,1024)){
  
$texto explode("-"$linea);
  if(!empty(
$texto[1])){
    
$setArray explode(" "$linea);
    
$Fecha $setArray[0];
    
$peras $setArray[1];
    
$limones $setArray[2];
    
$manzanas $setArray[3];

    echo 
$Fecha " ---- " $peras " ---- " $limones " ---- " $manzanas;
  }

  #5 (permalink)  
Antiguo 30/05/2009, 00:16
 
Fecha de Ingreso: mayo-2009
Ubicación: San Juan de Alicante
Mensajes: 9
Antigüedad: 15 años
Puntos: 0
Respuesta: Leer partes de un txt

Hola de nuevo, y gracias por responder.


Me comentas que ponga:
Código PHP:
while ($lineafgets($fichero,1024)){
                  
$texto explode("-"$linea);
                  if(!empty(
$texto[1])){
                        
$setArray explode(" "$linea);
                        
$Fecha $setArray[0];
                        
$peras $setArray[1];
                        
$limones $setArray[2];
                        
$manzanas $setArray[3];
                echo 
$Fecha "<br>" $peras "<br>" $limones "<br>" $manzanas;
  }

y yo lo implemento así:

Código PHP:
<?php
$fichero 
fopen("texto.txt","r");
        while (
$linea fgets($fichero,100000)){
            
$texto explode("-"$linea);
              if(
$texto[0] == "2009"){
                while (
$lineafgets($fichero,1024)){
                  
$texto explode("-"$linea);
                  if(!empty(
$texto[1])){
                        
$setArray explode(" "$linea);
                        
$Fecha $setArray[0];
                        
$peras $setArray[1];
                        
$limones $setArray[2];
                        
$manzanas $setArray[3];
                echo 
$Fecha "<br>" $peras "<br>" $limones "<br>" $manzanas;
  }
}
              }
                
        }
fclose($fichero);
?>
Y me muestra esto:

2009-05-26
0
6
3 2009-05-27
1
4
2

Me parece que hago algo mal, y por más vueltas que le doy no lo encuentro, a parte de que me he debido de explicar mal, ya que lo que quiero y no consigo es almacenar en distintos arrays los valores de cada línea. Un array para la fecha, otro array para las peras...
Gracias por adelantado.

Última edición por jjsi; 30/05/2009 a las 00:28
  #6 (permalink)  
Antiguo 30/05/2009, 00:22
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
Puntos: 1517
Respuesta: Leer partes de un txt

Perdona que no me acorde que pediste que estuvieran dentro de un array debe ser así entonces

Código PHP:
<?php 
$fichero 
fopen("texto.txt","r"); 
        while (
$linea fgets($fichero,100000)){ 
            
$texto explode("-"$linea); 
              if(
$texto[0] == "2009"){ 
                while (
$lineafgets($fichero,1024)){ 
                  
$texto explode("-"$linea); 
                  if(!empty(
$texto[1])){ 
                        
$setArray explode(" "$linea); 
                        
$Fecha[] = $setArray[0]; 
                        
$peras[] = $setArray[1]; 
                        
$limones[] = $setArray[2]; 
                        
$manzanas[] = $setArray[3]; 
                  } 
                } 
              } 
                 
        } 
print_r($Fecha);
print_r($peras);
print_r($limones);
print_r($manzanas);

fclose($fichero); 
?>
  #7 (permalink)  
Antiguo 30/05/2009, 01:31
 
Fecha de Ingreso: mayo-2009
Ubicación: San Juan de Alicante
Mensajes: 9
Antigüedad: 15 años
Puntos: 0
Respuesta: Leer partes de un txt

No me muestra todo :
Array ( [0] => 2009-05-26 [1] => 2009-05-27 ) Array ( [0] => 0 [1] => 1 ) Array ( [0] => 6 [1] => 4 ) Array ( [0] => 3 [1] => 2 )
  #8 (permalink)  
Antiguo 30/05/2009, 07:20
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
Puntos: 1517
Respuesta: Leer partes de un txt

Como que no te muestra todo. Yo veo que te salen los datos. Acuerdate que lo subdivide y ahora todo lo que sea dia lo coloca en un array todo lo que sea peras en otro array, limones en otro array y manzanas en otro array
  #9 (permalink)  
Antiguo 31/05/2009, 23:34
 
Fecha de Ingreso: mayo-2009
Ubicación: San Juan de Alicante
Mensajes: 9
Antigüedad: 15 años
Puntos: 0
Respuesta: Leer partes de un txt

Muchas gracias amigo, me había obcecado.
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 22:18.