Friday, July 27, 2012

Cuaderno IV de Apuntes de PHP:  Manipulación de Archivos (Escritura,  Lectura y Eliminación)

Funciones útiles para escribir en un archivo

La siguiente imagen muestra el formulario con los campos de entrada de texto, el primero se llama "titulo" y el segundo es un cuadro de Area de Texto llamado "textoDelUsuario"


El archivo de procesamiento de datos se llama curso17_guardarText.php. Aquí utilizaremos la variable $escribir que hace las veces de buffer, almacenando  el nombre y el tipo de archivo que estamos creando,  En este caso se llama "NombreDelArchivo.txt", 

<?php
//Prepara el archivo para escribir 
$escribir = fopen("NombreDelArchivo.txt","a") or die ("Problemas al crear archivo"); 
//Dando forma al archivo
fwrite($escribir,"Título: ".$_GET['titulo']); 
fwrite($escribir,"\n..................................................................................................\n\n"); 
fwrite($escribir, $_GET['textoDelUsuario']);
fwrite($escribir,"\n____________________________________________________________\n\n");
//Cierra el archivo
fclose($escribir);
echo "Datos guardados en el archivo: \"NombreDelArchivo.txt\" ";
?>
fopen(NombreDelArchivo.txt, "a")= es una función utilizada para crear y manipular  archivos, el segundo parámetro  a crea un nuevo archivo si este no existe, en el caso contrario, que el archivo con   ese nombre exista agrega datos al final.
die("Mensaje que quieras escribir en caso de error")= termina la aplicación si se genera algún error, podemos escribir un mensaje de salida.
fwrite(NombreDelArchivo.txt, "Cadena a escribir")= Agrega al archivo de escritura la cadena de caracteres que tengamos en el segundo parámetro. 
fclose(NombreDelArchivo.txt) = Cierra el archivo 

Funciones útiles para Leer un archivo

Usaremos la variable $leer para almacenar el nombre del archivo de lectura.

<?php 
$leer=fopen("NombreDelArchivo.txt","r") or die("No se pudo abrir el archivo NombreDelArchivo.txt");
    // El while se ejecuta hasta que lee la última línea ubicada al  final del archivo de texto (Mientras no sea la última línea)
while (!feof($leer)){
$linea = fgets($leer);
$saltoDeLinea = nl2br($linea);
echo $saltoDeLinea;

?>

feof("NombreDelArchivo.txt") indica cuando el puntero alcanza el final del archivo de texto
fgets("NombreDelArchivo.txt") Obtiene la línea de donde se encuentra el puntero
nl2br($cadenaDeCaracteres) Convierte los /n a <br/> que son los saltos de línea de HTML y PHP

Funciones útiles para Borrar un archivo


Este primer archivo es útil para mostrar el cuadro que nos ayuda a seleccionar el archivo que deseamos borrar.
<html>
<head><title>Borrar Archivos</title></head> 

<body>
<form action="curso19_borraArchivos.php", mode="post", name="frm">
<input type="file" name="archivo" /><br/>
<input type="submit" value="Eliminar"/>
</form>
</body>
</html>

Este es el archivo de entrega de datos "curso19_borraArchivos.php" donde se ejecuta el borrado del archivo.
<?php
        $nombreArchivo = $_GET['archivo'];
        unlink($nombreArchivo);
        echo "El archivo ". $nombreArchivo." ha sido borrado con exito";
?>

unlink(NombreDelArchivo.txt)= es una función utilizada para borrar archivos.


Los archivos de Texto de todas las lecciones los puedes descargar Aquí. .
Lista con todos los cuadernos de Apuntes de PHP Aquí.

Mas información en  Manual de php en Castellano: Función fopen()

Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.




No comments: