Traductor



La escritura en ficheros con PHP

El proceso de escribir en los ficheros con PHP es mas sencillo, que el de lectura, desde e punto de vista de las funciones destinadas a ello.
Lo primero que tenemos que debemos de tener en cuenta cuando vayamos a escribir algo en un fichero, es que debemos abrirlo usando el modo "a" o el modo "w", en lugar del modo "r".
Si además, prevemos que pueda ser necesario efectuar una lectura en el fichero, usaremos los modos "a+" o "w+", que permiten realizar ambas operaciones sin necesidad de cerrar y volver a abrir el fichero.

Para escribir, empleamos la función fwirte(), la cual recibe tres argumentos.
  • El primero es el manejador con el que se ha abierto el fichero.
  • El segundo es el contenido que deseamos escribir.
  • El tercer parámetro es opcional y se trata de un valor numérico, que hace referencia a la cantidad máxima de caracteres que se escribirán en la operación en curso, de modo que, si el segundo argumento tiene mayor longitud que la permitida por el tercero, solo se gravara parte de nuevo contenido.
Veamos un ejemplo prescindiendo del tercer argumento:
<?php
// Se define el salto de línea
    define ("salto","<br>\n");
/* Se abre el archivo para su escritura. Recuerde que,
cuando se intenta abrir un fichero para escritura, si
este no existe, PHP se encaarga de crearlo.*/
    $manejador=fopen("escrituraCompleta.txt","a");
// Se define una cadena.
    $cadena="Esto es una cadena de texto.";
/* Se intenta escribir la cadena y se comprueba
si ha sido posible.*/
    if (@fwrite($manejador,$cadena)){
        echo ("La cadena se ha escrito en el archivo.");
    } else {
        echo ("NO SE HA PODIDO ESCRIBIR.");
    }
// Se cierra el fichero.
    fclose ($manejador);
?>
En este ejemplo, hemos aprovechado las cualidades que tienen muchas funciones de PHP de devolver un valor booleano, para comprobar si se ha podido llevar a cabo la operación en curso.
Como e fichero donde se escribe la cadena, llamado escrituraCompleta.txt, no existe, por defecto, en la carpeta en la que estamos trabajando, el interprete del lenguaje se encarga de crearlo.
Recuerde que, si estuviéramos trabajando en un servidor remoto (como se trabaja en Internet), el archivo se creará en dicho servidor, no en el lado del cliente.
Una vez que haya ejecutado este script comprobará cómo se ha creado el archivo de texto.
Ábralo con cualquier editor y verá que su contenido es la cadena que hemos establecido como segundo parámetro de la función.

Ahora veremos algo similar, pero haciendo uso del tercer argumento. Es muy similar al anterior, la única diferencia es el uso del fwrite() con el tercer argumento limitando la operación a 6 caracteres.
<?php
// Se define el salto de línea
    define ("salto","<br>\n");
/* Se abre el archivo para su escritura. Recuerde que,
cuando se intenta abrir un fichero para escritura, si
este no existe, PHP se encaarga de crearlo.*/
    $manejador=fopen("escrituraLimitada.txt","a");
// Se define una cadena.
    $cadena="Esto es una cadena de texto.";
/* Se intenta escribir la cadena y se comprueba
si ha sido posible.*/
    if (@fwrite($manejador,$cadena,6)){
        echo ("La cadena se ha escrito en el archivo.");
    } else {
        echo ("NO SE HA PODIDO ESCRIBIR.");
    }
// Se cierra el fichero.
    fclose ($manejador);
?>
Nota: Existe otra función para escritura en ficheros , su nombre es fputs(), y es lo que se conoce como un alias de fwrite(). Esto significa que tiene la misma sintaxis y funciona exactamente igual, por lo que puede usar cualquiera de las dos funciones indistintamente.

Si te hemos ayudado : )

Te agradeceríamos que apoyaras este proyecto



No se te olvide Comentar y Compartir
en:
                          

0 comentarios:

Publicar un comentario