Manejo de Ficheros

En esta seccion veremos las funciones mas comunes de acceso a ficheros, ya que son de vital ayuda cuando queremos por ejemplo, recuperar o escribir datos desde contadores, libros de vicita etc…
Apertura de un archivo.

La función utilizada para abrir un archivo en PHP es fopen, y su sintaxis:
file_handler=fopen(“nombre_de_archivo”,”modo”);
Donde file_handler es el puntero que se crea sobre el archivo, nombre_de_archivo es la ruta y nombre del archivo a abrir, y modo se refiere a los diferentes modos escritura/lectura.

Los Modos son:

  • r Sólo lectura. El puntero al comienzo del archivo
  • r+ Lectura y escritura; apuntador al inicio del archivo
  • w Sólo escritura, si no existe el archivo lo crea, si existe lo convierte en fichero de longitud cero y el apuntador se coloca en el inicio (sobreescribe el contenido, vamos)
  • w+ Lectura y escritura, si existe lo trunca a tamaño cero, y se situa al inicio, si no existe lo crea
  • a Modo append, sólo escritura, si no existe lo crea. Si existe, el apuntador se coloca al final del ficero (listo para escribir a continuacion del contenido)
  • a+ Modo append, lectura y escritura, si no existe lo crea; apuntador al final del archivo
  • b es un flag adicional a cualquiera de los anteriores que indica que vamos a operar sobre un archivo binario (en contraposicion a archivo de texto) como una imagen o un sonido. En algunos sistemas operativos como linux no existe esta diferencia asi que el indicador b será ignorado.

La función devuelve un file_handler que luego debe ser usado en todas las funciones de tipo fgets, fputs, fclose, fread, fwrite, etc.

fopen solo debe usarse para abrir un archivo cuyo contenido vamos a manipular. Si unicamente queremos recuperar su contenido (y por ejemplo mostrarlo en pantalla), hay otras funciones mas adecuadas.

Cerrar el archivo: fclose()

para eso usamos fclose sobre el apuntador adquirido sobre el fichero previamente abierto con fopen. sintaxis fclose (file_handler);

Es muy importante cerrar el fichero al terminar de operar con el, para evitar deterioro de los datos.

ejemplo 1:

<?php
//vamos a ir construyendo un contador básico
//abrimos "contador.txt" en modo lectura

if ($file fopen"/otros/contador.txt",  "r")) {
// tenemos un puntero ($file) sobre contador.txt
// codigo de manejo del fichero
    fclose($file); // hemos terminado, cerramos el apuntador
}
?>

ejemplo 2

<?php
if ($file fopen"/otros/contador.txt",  "w")) {
// tenemos nuevo apuntador.
// codigo de manejo del fichero
fclose($file); //hemos terminado, cerramos el archivo.
}
?> 

Como nota final queda aclarar que la variable $file no es el nombre del archivo sino el apundador (fie_handler) al contenido.

Anuncios

About exequielc

Hola! Estás en el blog de Exequiel Catalani. Como es un blog, se trata de una extensión más o menos lineal de las cosas que hago y pasan por mi cabeza: ciberculturas, videos de la red, nuevos medios y tecnologia, y Programacion etc...

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: