Plantilla:PHP/Formularios/accionesFicheros

De WikiEducator
Saltar a: navegación, buscar

Acceso a un fichero

  • Son muchas las acciones que podemos hacer con los ficheros
http://php.net/manual/es/book.filesystem.php
Acciones típicas sobre un fichero
  • Vamos a verlas según nuestras necesidades
1.-Crear un fichero para escribir en él
  • Si no existe que se intenta crear
  • Si sí que existe:
    • Agregar cosas sin perder lo que había.
    • Borrar lo que hubiera crearlo para escribir en él.
2.-Abrir un fichero para leer
  • Si no existe dará un error
  • Si sí que existe lo abrirá para obtener bytes de él

(Comment.gif: En ambos casos obtendremos un recurso descriptor del fichero para operarar con él)



Abrir un fichero

  • Parar poder acceder a un fichero necesitamos tener una referencia a él (Tanto para escribir como para leer).

(Comment.gif: Recuerda que es el usuario apache el que ha de tener los permisos necesarios (leer(r),escribir (w), ejecutar (x))


 $archivo = fopen($nombre_fichero,$modo)
  • $archivo Va a ser la variable con la que vamos a poder gestionar el archvio. Será de tipo recurso, un objeto de una clase del sistema.
  • $nombre_fichero Es el nombre del fichero. Nos movemos en ruta respecto a la ubiciación del script que se está ejecutando. Podemos indicar también la ruta
 //Ruta absoluta
 $archivo = fopen('/var/www/html/log.txt',$modo);
 //Ruta relativa al directorio donde se encuentra el proyecto
 $archivo = fopen('log.txt',$modo);
  • $modo Es el modo de apertura (lectura, creación, añadir )· Hay varios modos
  1. r => Lectura.
    w => Escritura (Trunca el contenido).
    a => append o añadir.
  • Una vez abierto vamos a ver cómo leer o escribir de/en él.

Leer de un fichero

  • Podemos realizar una lectura de su contenido por partes

String fread ($fichero, $leng);

  • Leemos de un fichero la longuitd en bytes que indique el segundo parámetro
  • No será algo habitual pero en alguna ocasión puede venir bien
  • Podemos obtener todo el contenido de un fichero.
  • Para este cometido tenemos dos funciones
array file($fichero)
  • la función file()Esta función devuelve el contenido del fichero como un array indexado de cada una de sus líneas.
string get_file_content($fichero).


Icon activity.jpg
usando la función file()

Crea un fichero con nombres en cada línea

María Ruiz
Mercedes Naranjo
Manuel Romero
Sara Rodríguez
Jorge Martínez
Eduarlo Laborda
Nieves Rodera
  • Usando file visualiza de cada nombre



  • la función get_file_contents() retorna el contenido del fichero como un string.

Escribir en un fichero

fwrite($fichero, "texto para escribir");

Acceso a un directorio