Nueva pregunta

Pregunta:

Fecha: 07-11-2016 06:06:35 (En Español)

Uso de archivos de texto, lectura de un archivo, extracción de información y escritura en otro archivo de texto[Resuelta]

Saludos amigos de PHP Central:
Necesito ejecutar las siguientes acciones.-
Abrir un archivo de texto (boletas.txt) donde existen datos de personas en un grupo de lineas y que de acuerdo al numero de su documento se ubique a la persona, hasta aquí no hay problema.

Debo de guardar un bloque de lineas de información de alguna manera del dato buscado, aquí empieza mi problema, como guardo esta información, que función si existe debo usar, y por ultimo.

Esta información obtenida debo de guardarla en otro archivo de texto (talon.txt).
Adjunto el archivo php que he realizado esperando puedan ayudarme.
Un Abrazo
Pedro

<?php 

ini_set("auto_detect_line_endings", true);

$lineas = file("boletas.txt");
$palabra = "28240253";
$pos = 0;    

    // Podemos mostrar / trabajar con todas las líneas:
    foreach($lineas as $linea)
    	{
        if (strstr($linea,$palabra))
		{	echo $linea.$pos;

			//echo "si esta la palabra $linea, está en la linea : ".$pos;
			$pun = $pos;
		}
		   $pos++;

		}

$fp = fopen("boleta.txt", "w");
fgets($fp, $pun);
fwrite($fp, $palabra);
fclose($fp);

?>

<!DOCTYPE html>
<html lang="es">
  <head>
  </head>

  <body>
  </body>
</html>

Etiquetas: Votos: 1 - Respuestas: 5 - Vistas: 11 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 08-11-2016 03:28:52 Como quiere q este el formato en el txt , haz un pantallazo , te comento en mi caso implemente un modulo de acreditaciones Latampass el cual se encarga de mandar unos crep a latam ahora para mandar ese crep (txt) consulto un bd y luego con la informacion escribo en mi txt en mi caso esto es el formato

      Votos: 0 - Link respuesta
     
  • Fecha: 08-11-2016 05:47:44 Saludos mi archivo boletas.txt es el siguiente:

    Apellidos : ALATRISTA CALAMULLO
    Nombres : MARIO JHON
    Fecha de Nacimiento : 28/12/1973
    Documento de Identidad : (Lib.Electoral o D.N.) 01863174
    Establecimiento : UNIDAD DE GESTION EDUCATIVA LOCAL
    Cargo : ESP. ADMINISTARTIVO I
    Tipo de Servidor : ADMINISTRATIVO NOMBRADO
    .

    Apellidos : ARANA HINOSTROZA
    Nombres : LISBER
    Fecha de Nacimiento : 25/06/1979
    Documento de Identidad : (Lib.Electoral o D.N.) 40372366
    Establecimiento : UNIDAD DE GESTION EDUCATIVA LOCAL
    Cargo : ESP. ADMINISTARTIVO I
    Tipo de Servidor : ADMINISTRATIVO NOMBRADO
    .

    Apellidos : AVENDAÑO GUTIERREZ
    Nombres : SIXTO
    Fecha de Nacimiento : 06/04/1961
    Documento de Identidad : (Lib.Electoral o D.N.) 28240253
    Establecimiento : UNIDAD DE GESTION EDUCATIVA LOCAL
    Cargo : TEC.ADM.
    Tipo de Servidor : ADMINISTRATIVO NOMBRADO
    .

    Apellidos : AYBAR CUADROS
    Nombres : MARIA JOSEFINA
    Fecha de Nacimiento : 19/03/1956
    Documento de Identidad : (Lib.Electoral o D.N.) 28228131
    Establecimiento : UNIDAD DE GESTION EDUCATIVA LOCAL
    Cargo : SECRETARIA / O I
    Tipo de Servidor : ADMINISTRATIVO NOMBRADO
    .


    y mi archivo talones.txt una vez ubicado el dato deberá ser:


    Apellidos : AVENDAÑO GUTIERREZ
    Nombres : SIXTO
    Fecha de Nacimiento : 06/04/1961
    Documento de Identidad : (Lib.Electoral o D.N.) 28240253
    Establecimiento : UNIDAD DE GESTION EDUCATIVA LOCAL
    Cargo : TEC.ADM.
    Tipo de Servidor : ADMINISTRATIVO NOMBRADO
    .

    agradeceré su apoyo.
      Votos: 0 - Link respuesta
     
  • Fecha: 08-11-2016 09:46:22 te comparto el codigo , pruebalo y me comentas

    saludos

    Att Jose Quinto


    <?php 
    
    $archivo = file("archivo/boletas.txt");
    $palabra = "28240253";
    
    function retornar_posicion($archivo,$palabra){
       
        $pos = 0; 
    
        foreach($archivo as $arc){
            if (strstr($arc,$palabra)) {
                $pun = $pos; 
                break;
            }
            $pos++;
        }
    
       return $pun;
    }
    
    
    $posicion = retornar_posicion($archivo,$palabra);
    
    
    $linia_inicio = $posicion-3;
    $linia_final = $posicion+4;
    
    
    $fp = fopen("talones.txt", "w");
    
    for ($i=$linia_inicio; $i<=$linia_final ; $i++) { 
       fwrite($fp, $archivo[$i]);
    }
    
    fclose($fp);
    ?>
    
      Votos: 1 - Link respuesta
     
  • Fecha: 08-11-2016 12:58:39 Gracias amigo, me funciono correctamente un abrazo estamos para servirnos   Votos: 1 - Link respuesta
     
  • Fecha: 08-11-2016 18:21:39 De nada pedro, igualmente saludos, que bien q te haya servido   Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com