Página principal | Inicio PHP | Introducción | Lenguaje PHP | Tipos de datos | Control | Arreglos | Formularios | Archivos | Bases de datos | PHP y MySQL | PHP y ODBC | Envió de email | Sesiones | Servicios Web

 

Archivos  

 

    fopen

 

fopen -- Abre un archivo o una URL

 

Descripción

 

int fopen (string filename, string mode [, int use_include_path])

 

Si filename comienza con "http://" (no es sensible a mayúsculas), se abre una conexión HTTP 1.0 hacia el servidor especificado y se devuelve un apuntador de archivo al comienzo del texto de respuesta.

 

No maneja redirecciones HTTP, por eso se debe incluir una barra final cuando se trata de directorios.

 

Si filename comienza con "ftp://" (no es sensible a mayúsculas), se abre una conexión ftp hacia el servidor especificado y se devuelve un apuntador al archivo requerido. Si el servidor no soporta ftp en modo pasivo, esto fallará. Se pueden abrir archivo via ftp para leer o para escribir (pero no ambas cosas simultáneamente).

 

Si filename no comienza con nada de lo anterior, el archivo se abre del sistema de archivos, y se devuelve un apuntador al archivo abierto, si el abrir el archivo falla, la función devuelve false.

 

mode puede ser cualquiera de lo siguiente:

 

·         'r' - Abre para sólo lectura; sitúa el apuntador del archivo al comienzo del mismo.

·         'r+' - Abre para lectura y escritura; sitúa el apuntador del archivo al comienzo del archivo.

·         'w' - Abre para sólo escritura; sitúa el apuntador del archivo al comienzo del archivo y trunca el archivo con longitud cero. Si el archivo no existe, trata de crearlo.

·         'w+' - Abre el archivo para lectura y escritura; sitúa el apuntador del archivo al comienzo del archivo y trunca el archivo con longitud cero. Si el archivo no existe, trata de crearlo.

·         'a' - Abre sólo para escribir (añadir); sitúa el apuntador del archivo al final del mismo. Si el archivo no existe, trata de crearlo.

·         'a+' - Abre para lectura y escritura (añadiendo); sitúa el apuntador del archivo al final del mismo. Si el archivo no existe, trata de crearlo.

Además, mode puede contener la letra 'b'. Esto es útil para sistemas que diferencian entre archivos binarios y de texto (es inútil en Unix). Si no se necesita, será ignorado.

 

Puede usarse el tercer parámetro opcional y fijarlo a "1".

 

    fwrite

 

fwrite -- Escribe archivos en modo binario

 

Descripción

int fwrite (int fp, string string [, int length])

 

fwrite() escribe el contenido de string al fichero apuntado por fp. Si se da el argumento length, la escritura acaba antes de que length bytes sean escritos o se alcance el final de string, lo que ocurra primero.

 

    fread

 

fread -- Lee archivos en modo binario

 

Descripción

 

string fread (int fp, int length)

 

fread() lee hasta length bytes del apuntador de fichero referenciado por fp. La lectura acaba cuando length bytes se han leido o se alcanza EOF, lo que ocurra primero.

 

Con esta teoría ya podemos realizar nuestro propio contador de visitas en nuestro sitio web, así sabremos que tan popular es nuestro sitio, es necesario tener permisos de escritura en nuestro directorio donde va a estar el contador (contador.php).

 

contador.php

<?php

  $contador_archivo="c:/xampp/htdocs/taller/conta.dat";

  if (!($fp=fopen($contador_archivo,"r")))

    die("No se encontro $contador_archivo");

  $contador=(int)fread($fp,20);

  fclose($fp);

  $contador++;

  echo "Eres el visitante número: <b>$contador</b>";

  $fp=fopen($contador_archivo,"w");

  fwrite($fp,$contador);

  fclose($fp);

?>

 

La instrucción die envía a la salida un mensaje y finaliza la ejecución del script. No devuelve nada.