Ficheros en PHP en profesordeinformatica.com

Ficheros en PHP

Por Aitor López de Aberasturi el Lunes, 11 de Agosto de 2014 0 Comentarios

Vamos a poder como podemos leer y escribir en un fichero de texto mediante php. Esto suele ser muy útil ya que hay ocasiones en las que queremos cargar datos en una base de datos a partir de un fichero o queremos exportar estos.

En el tratamiento de ficheros vamos a utilizar cuatro funciones básicas:

  • manejador fopen(fichero, modo): Nos devuelve un manejador del fichero y tiene dosparámetros el fichero y el modo de apertura. El fichero indica el nombre del fichero. El modo el modo en el que vamos a abrir nuestro fichero:

    r modo de solo lectura. Abrimos el fichero y el cursos se coloca al principio del mismo, solo se permite leer hasta el final del fichero.

    r+ modo lectura y escritura). Abrimos el fichero y el cursos se coloca al principio del mismo, se permite leer y escribir hasta el final del fichero.

    w (modo sólo escritura), el fichero se crea si no existe y se borra si ya existe. Se sitúa el cursos al principio y solo se permite escribir.

    w+ (modo escritura lectura, el fichero se crea si no existe y se borra si ya existe. Se sitúa el cursos al principio y se permite leer y escribir.

    a (modo añadir ), el fichero se crea si no existe y añade contenido si ya existe. Se sitúa el cursos al final y solo se permite escribir.

    a+ (modo añadir/lectura, el fichero se crea si no existe y se borra si ya existe. Se sitúa el cursos al final y se permite leer y escribir.

  • fclose (manejador fichero): Nos permite cerrar el manejador del fichero abierto anteriormente.
  • fputs (manejador, texto): Nos permite escribir o añadir un texto a un fichero.
  • string fgets (manejador[, tamaño]): Nos permite leer el contenido de un fichero con un tamaño de línea y nos lo devuelve.
  • feof (manejador): Nos indica si hemos llegado al final del fichero.

Ejemplo:

escribirfichero.php

 
<?php

# Abrimos el fichero en modo de escritura
$manejador = fopen("prueba.txt","w");

#Escribimos una linea
fputs($manejador,"Primera linea\n");

#Escribimos otra linea
fputs($manejador,"Segunda linea\n");

#Cerramos el fichero
fclose($manejador);
?>

Para poder ejecutar el anterior ejemplo tenemos que tener permiso de escritura con el usuario que lo ejecutemos. Si lo ejecutamos varias veces sólo se van a borrar y se va a crear dos líneas ya que estamos en modo escritura. Se puede hacer pruebas cambiando de modos.

leerfichero.php

 
<?php
$manejador = fopen("prueba.txt", "r") or exit("No se ha podido abrir el fichero.");
while(!feof($manejador))
{
echo fgets($manejador). "<br />";
}
fclose($manejador);
?>

En el anterior ejemplo leemos el fichero que prueba.txt que habíamos creado con el ejemplo anterior y lo sacamos por pantalla.

Los anteriores ejemplos se pueden ejecutar desde la línea de comandos con el intérprete php:

 
php leerfichero.php

Próxima entrada

Upload en PHP


Sobre el profe

Esta es la página web de Aitor Lopez de Aberasturi profesor de informática en ITS Ciudad Jardin. También puedes visitar mi blog de clase.