Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Extraer valores de un archivo txt

Estas en el tema de Extraer valores de un archivo txt en el foro de PHP en Foros del Web. Buenas tardes a todos, Estoy intentando hacer lo siguiente. Tengo un archivo txt que se actualiza cada minuto mostrando diferentes valores separados mediante un espacio, ...
  #1 (permalink)  
Antiguo 12/12/2015, 12:43
 
Fecha de Ingreso: diciembre-2015
Mensajes: 6
Antigüedad: 10 años, 9 meses
Puntos: 0
Extraer valores de un archivo txt

Buenas tardes a todos,

Estoy intentando hacer lo siguiente. Tengo un archivo txt que se actualiza cada minuto mostrando diferentes valores separados mediante un espacio, por ejemplo:

Código:
2.6 7.8 69 132 1.8
Necesito acceder al archivo txt, extraer los valores, asociarlos a sus correspondientes etiquetas y crear otro archivo txt como el siguiente:

Código:
{"temp":"2.6","hum":"69","wind":"7.8","dirwind":"132","rain":"1.8"}
He utilizado la función substr() y me ha funcionado. El problema viene cuando por ejemplo el valor 2.6 se actualiza y cambia a 10.2, que al tener un dígito mas ya no me vale la misma función substr(). Hay alguna otra forma de extraer los valores?

Un saludo y muchas gracias.
  #2 (permalink)  
Antiguo 12/12/2015, 14:30
 
Fecha de Ingreso: diciembre-2015
Ubicación: México
Mensajes: 280
Antigüedad: 10 años, 10 meses
Puntos: 20
Respuesta: Extraer valores de un archivo txt

Hola amigo, no has intentado usar la función explode?
Échale un vistazo a la documentación de php, creo q en este caso, esa función te puede ayudar más q substr
  #3 (permalink)  
Antiguo 12/12/2015, 14:43
 
Fecha de Ingreso: julio-2011
Ubicación: Los Rios
Mensajes: 145
Antigüedad: 15 años, 2 meses
Puntos: 10
Respuesta: Extraer valores de un archivo txt

Utiliza explode guiate en este ejemplo:

Código PHP:
Ver original
  1. $variable="2.6 7.8 69 132 1.8";
  2. $datos=explode(' ',$variable);
  3. // ahora tendras en el vector $datos cada uno de ellos asi:
  4. //$datos[0]=2.6;
  5. //$datos[1]=7.8 y asi con todos el resto

espero haber ayudado
  #4 (permalink)  
Antiguo 13/12/2015, 11:42
 
Fecha de Ingreso: diciembre-2015
Mensajes: 6
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Extraer valores de un archivo txt

Muchas gracias a los dos ya he conseguido hacerlo. Al final ha quedado así:
Código PHP:
<?php
$filas
=file('archivo.txt'); 
foreach(
$filas as $value){
    list(
$Header, $viento, $racha, $dir, $temp, $hum, $bar, $preci, $precimes, $preciaño, $rate, $maxrate, $tempint, $humint, $soil, $fore, $a, $b, $c, $preciayer, $c, $d, $e, $f, $g, $h, $i, $j, $k, $hora, $minuto, $segundo, $nombre, $l, $solar, $dia, $mes) = explode(" ", $value);
    echo 
'{"time":"'.$hora.''; 
    echo 
':'.$minuto.''; 
    echo 
'","date":":'.$dia.''; 
    echo 
'/'.$mes.''; 
    echo 
'/2015","temp":"'.$temp.''; 
    echo 
'","hum":"'.$hum.''; 
    echo 
'","wind":"'.$viento.''; 
    echo 
'","dirwind":"'.$dir.''; 
    echo 
'","rain":"'.$preci.''; 
    echo 
'","rainrate":"'.$rate.''; 
    echo 
'","bar":"'.$bar.''; 
    echo 
'"}'; 
}
?>
Sabéis como puedo guardar el resultado en otro archivo txt en otro directorio?
Gracias.
  #5 (permalink)  
Antiguo 13/12/2015, 11:44
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 18 años, 5 meses
Puntos: 2534
Respuesta: Extraer valores de un archivo txt

Cita:
Sabéis como puedo guardar el resultado en otro archivo txt en otro directorio?
No lo imprimas con echo, concatena el resultado en un cadena de texto y así la podrás guardar donde sea.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

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 21:42.