Para leer un archivo .txt carácter a carácter en PHP vamos a utilizar la función fgetc(). Por ejemplo si queremos leer línea por línea el archivo 1.txt que se encuentra ubicado en la misma carpeta que el archivo .php, tenemos que escribir en el archivo PHP:

<?php
$file=fopen("1.txt","r") or exit("Unable to open file!");
while (!feof($file))
{
echo fgetc($file);
}
fclose($file);
?>

victor

Hola!. Me llamo Víctor Reyes y soy Ingeniero Agrónomo de formación y programador web de profesión (desde el año 2006). Por otra parte me gusta, entre otras aficiones, el senderismo, jugar al futbol y al FIFA en la PS3. Te animo a participar en mi web www.biolucas.com

This Post Has 6 Comments

  1. Marín Cartaya

    Buenos días tengo un problema con la lectura de un archivo txt y pasar los datos a una BD mysql, el problema radica en que en un archivo txt tengo unos poemas con nùmero del poema, nombre del autor, y otros datos pero no encuentro la forma de depositar esa información en la base de datos. Aquí el archivo.
    POEMA PARA LAS MADRES Nº-012312
    POR: cARLOS CONTRERA
    FECHA: 02/02/2016.

    tITULO:

    CANCION DE INVIERNO

    En mi vida brotò la esperanza de ser libre como las aguas del

    POEMA PARA LAS MADRES Nº-012323
    POR: Jorge Rojas
    FECHA: 02/02/2016.

    tITULO:

    VIDA

    Vivir como una isla,
    lleno por todas partes
    de ti, que me rodeas
    ya presente o distante

    con un temblor de luz
    primera, sin pulir,
    sin arista de tarde,
    ni sombra de jardín.

    Y ángeles en espejos
    guardando tu mirada
    para hacerse verdades
    y noches estrelladas.

    POEMA PARA LAS MADRES Nº-012389
    POR: Karmelo Iribarren
    FECHA: 02/12/2016.

    tITULO:

    ESO ERA AMOR

    Te veía
    llegar,
    cruzar la puerta,
    darme un besazo en el morro,
    mirarme a los ojos
    de esa manera única,
    como solo tú miras
    a los ojos: rompiendo el calendario.

    Te veía
    hacer esas cosas sencillas
    que tú haces
    para que el mundo
    entre en razón;

    y no sabía
    a quién
    darle las gracias.

    POEMA PARA LAS MADRES Nº-012365
    POR: Antonio Machado
    FECHA: 02/15/2016.

    tITULO:

    LOS SUEÑOS

    El hada más hermosa ha sonreído
    al ver la lumbre de una estrella pálida,
    que en hilo suave, blanco y silencioso
    se enrosca al huso de su rubia hermana.

    Y vuelve a sonreír porque en su rueca
    el hilo de los campos se enmaraña.
    Tras la tenue cortina de la alcoba
    está el jardín envuelto en luz dorada.

    La cuna, casi en sombra. El niño duerme.
    Dos hadas laboriosas lo acompañan,
    hilando de los sueños los sutiles
    copos en ruecas de marfil y plata.
    Agradezco cualquier colaboración.

    1. victor
      victor

      Buenos días y muchas gracias por colaborar. Lo voy a subir por si alguien puede ayudarte.

      Saludos!

  2. Omar

    Hola, soy realmente nuevo en php y principalmente con archivos, no se si me puedas ayudar lo mio es realmente sencillo de hacer pero aun no le entiendo a esto de los archivos.
    Bueno vamos con el problema supongamos que tengo un archivo x.txt y en el archivo contiene
    1, 5
    10
    y lo que quiero es meter el 1 en una variable $y y el 5 en $x y por ultimo el 10 en $z
    no se si me pudieras mostrar un ejemplo similar a lo que necesito para poder entender mejor

    1. victor
      victor

      Hola Omar, te voy a poner un ejemplo, supongamos que tenemos un archivo 1.txt con este contenido: 9,admin@google.com,8
      Para desde un archivo php leerlo dinámicamente podemos poner lo siguiente (en este caso el explode separamos elementos donde hay una coma):

      < ?php $filename = "1.txt"; $fp = fopen($filename, "r"); $content = fread($fp, filesize($filename)); $valores = explode(",", $content); fclose($fp); //Con print_r vamos a ver el valor de este array print_r($valores); /*Para ver los valores del array por separado se escribe el array seguido de [n] siendo n el número de orden en el array empezando por el 0, no por el 1*/ echo "\$valores[0] = ".$valores[0]; echo "\$valores[1] = ".$valores[1]; echo "\$valores[2] = ".$valores[2]; //Si tuvieramos más valores seguiría [3] [4], etc //Si queremos que el primero sea por ejemplo $x, el segundo $y y el tercero $z $x = $valores[0]; $y = $valores[1]; $z = $valores[2]; //Para ver otra vez cada valor por separado echo "\$x = ".$x; echo "\$y = ".$y; echo "\$z = ".$z; ?>

      Es decir, tenemos 2 archivos, 1.txt y otro .php (por ejemplo 1.php, aunque da igual su nombre). Al leer el .txt desde .php obtenemos un array por cada elemento (hemos separado elementos por las comas, con lo que el .php hace un elemento del array hasta que lee una coma). Estos elementos del array se pueden leer tal cual o igualarlos a una variable $x, $y, etc y después leerlos.

      Espero haberte ayudado, aunque no se si realmente esta era tu duda, si no entiendes algo o te he puesto algo que no tiene nada que ver vuelve a preguntar e intento resolverlo.

      Un saludo, Víctor

      1. Omar

        Pues la verdad me has ayudado bastante y si eso era lo que necesitaba, gracias me has ayudado a entender mas esto de leer los archivos en php

        Saludos

        1. victor
          victor

          Genial Omar, me alegra que te haya servido!

          Si tienes cualquier duda no dudes en escribirla aquí e intentaremos ayudarte.

          Un saludo, Víctor

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


*

CommentLuv badge