PHP
Main Menu 
 
Desarrollo de Páginas Web con PHP 

Posiblemente durante nuestra tarea de programacion nos surga la necesidad de obtener datos de un fichero, o bien, de crear uno. PHP nos provee de una extensa gama de funciones de acceso a ficheros.

En esta leccion solo vamos a las funciones basicas, abrir (fopen), cerrar (fclose), leer (fgets) y escribir (fputs). Estas cuatro nos solventaran la mayoria de problemas que nos surgan con respecto al acceso a ficheros.

fopen (archivo, modo)

Con esta funcion abrimos un fichero, bien sea local o una direccion de internet (http:// o ftp://).

La funcion fopen nos devuelve un valor numerico (indicador de archivo) de tipo integer que nos servirara para hacer referencia al archivo abierto.

Con fopen podemos abrir un archivo de los siguientes modos:

r    solo lectura

r+  lectura y escritura

w    solo escritura. Sino existe el archivo lo crea, si ya existe lo machaca.

w+  lectura y escritura. Sino existe el archivo lo crea, si ya existe lo machaca.

a    solo lectura. Sino existe el archivo lo crea, si ya existe empieza a escribir al final del archivo.

a+  lectura y escritura. Sino existe el archivo lo crea, si ya existe empieza a escribir al final del archivo.

<?PHP

//abre un archivo utilizando el protocolo HTTP

if ( ! fopen("http://www.ciberaula.com/", "r")) {

echo "El archivo no se puede abrir\n";

exit;

}

?>

Los modos r, r+ , w , w+  colocan el puntero de lectura/escritura a principio del fichero, los modos a , a+  lo colocan al final.

 

fgets (indicador_archivo, longitud)

La funcion fgets nos devuelve una cadena con la longitud especifica del fichero al que apunta el indicador de archivo.

<?PHP

//abre un archivo e imprime cada linea

$archivo = fopen("data.txt" , "r");

if ($archivo) {

while (!feof($archivo)) {

$linea = fgets($archivo, 255);

echo $linea;

}

}

fclose ($archivo);

?>

La funcion feof devuelve TRUE si puntero de lectura/escritura se encuetra al final del fichero, y FALSE en caso contrario.

 

fputs (indicador_archivo, cadena)

La funcion fputs escribe una cadena en el fichero indicado. Para escribir en una archivo este debe haber sido previamente abierto. La funcion fputs devuelve TRUE si se ha escrito con exito, en caso contrario devuelve FALSE.

<?PHP

//abre un archivo y escribe en el

$archivo = fopen("data.txt" , "w");

if ($archivo) {

fputs ($archivo, "Hola Mundo");

}

fclose ($archivo);

?>

 

fclose (indicador_archivo)

Con esta funcion cerramos el fichero que nos marca el indicador de archivo, devuelve TRUE si el fichero se cierra correctamente y FALSE sino se ha podido cerrar.

 

file_exists (fichero)

Esta funcion devuelve TRUE si el archivo especificado existe, y FALSE en caso contrario.

<?PHP

if (file_exists("data.txt")) {

echo "El fichero existe";

} else {

echo "El fichero NO existe";

}

?>

 

copy (origen, destino)

La funcion copy copia un fichero de un lugar (origen) a otro (destino), devuelve TRUE si la copia a tenido exito y FALSE en caso contrario.

<?PHP

if (copy("data.txt", "/tmp/data.txt")) {

echo "El fichero ha sido copiado con exito";

} else {

echo "El fichero NO se ha podido copiar";

}

?>