Función PHP file_put_contents

Función PHP file_put_contents
Existen muchas funciones en PHP para escribir contenido en el archivo. La función file_put_contents () es una de ellas. Se usa para escribir cualquier datos de cadena en un archivo. Si el archivo existe, esta función sobrescribirá el contenido anterior con los nuevos datos de cadena o agregará la cadena al final del archivo. Si el archivo no existe, un nuevo archivo se creará automáticamente con el valor de cadena. La sintaxis de esta función se da a continuación.

Sintaxis:

Int | false file_put_contents (string $ filename, mixed $ data [, int $ flags = 0 [, recurso $ context]]))

El primer argumento es obligatorio y se utiliza para definir el nombre de archivo donde se escribirán los datos.

El segundo argumento es obligatorio y se usa para definir los datos escritos en el archivo.

El tercer argumento es opcional, que se utiliza para definir la apertura del archivo o escribir los datos. Cualquiera de los siguientes valores se puede usar en este argumento.

File_use_include_path:
Se usa la búsqueda del archivo en el directorio de incluir.

File_append:
Si el archivo existe, se usa para agregar los datos al final del archivo.

Lock_ex:
Se usa para establecer el bloqueo exclusivo en el archivo al escribir.

El Cuarto argumento es opcional y se usa para definir el comportamiento de la secuencia o el contexto para manejar el archivo.

La función regresa el número de caracteres escritos en el archivo y devuelve falsos si no se escriben datos en el archivo

FILE_PUT_CONTENTS () Ejemplos de funciones

Se han mostrado diferentes usos de la función file_put_contents () en la siguiente parte de este tutorial utilizando múltiples ejemplos. Ha establecido los permisos de lectura y escritura necesarios en la carpeta donde el archivo se ubicará antes de practicar los ejemplos de este tutorial; de lo contrario, el error denegado se produciría. Ejecute el siguiente comando para establecer todo el permiso para la carpeta, '/var/www/html/php'.

$ sudo chmod -r 777/var/www/html/php

Ejemplo-1: escriba/sobrescribe el contenido en un archivo

Cree un archivo PHP con el siguiente script que escribirá un texto en un archivo de texto ubicado dentro de la carpeta, '/var/www/html/php'. Si el temperatura.TXT El archivo existe antes, luego el archivo_put_contents () sobrescribirá el contenido del archivo. Si el temperatura.TXT el archivo no existe, entonces la función file_put_contents () creará el archivo automáticamente antes de escribir. A continuación, la función file_get_contents () se usa en el script para verificar si el texto se ha escrito correctamente en el archivo o no.

// Establecer el nombre de archivo
$ filename = "temp.TXT";
// Establecer el valor de la cadena
$ str = "Agregar contenido al archivo.";
// Escribir contenido al archivo
file_put_contents ('/var/www/html/php/'.$ FileName, $ str) o print_r (error_get_last ());
// verificar el archivo existe o no
if (file_exists ($ filename))

echo "El contenido del archivo:
";
// Imprimir el contenido del archivo
echo file_get_contents ($ filename);

?>

Producción:

La siguiente salida aparecería después de ejecutar el script anterior si el texto se escribió correctamente en el archivo.

Ejemplo-2: Agregar datos en un nombre de archivo existente

Cree un archivo PHP con el siguiente script que agregará un texto con la nueva línea en un archivo de texto existente ubicado dentro de la carpeta, '/var/www/html/php'. El File_append y Lock_EX Las opciones se utilizan en el tercer argumento de la función file_put_put_contents () para agregar el texto al temperatura.TXT archivo. A continuación, la función file_get_contents () se usa en el script para verificar si el texto se ha escrito correctamente en el archivo o no.

// Establecer el nombre de archivo
$ filename = "temp.TXT";
// verificar el archivo existe o no
if (file_exists ($ filename))

echo "El contenido del archivo antes de agregar:
";
// Imprimir el contenido del archivo
echo file_get_contents ($ filename);
// Establecer el valor de la cadena
$ str = "Agregar nuevo contenido al archivo.\norte";
// Escribir contenido al archivo
file_put_contents ('/var/www/html/php/'.$ nombre de archivo, $ str, file_append | LOCK_EX) o print_r (ERROR_GET_LAST ());
eco "
El contenido del archivo después de la apertura:
";
// Imprimir el contenido del archivo
echo file_get_contents ($ filename);

?>

Producción:

La siguiente salida aparecería después de ejecutar el script anterior si el texto se agregó correctamente en el archivo.

Ejemplo-3: escriba/sobrescribe el contenido del archivo usando file_use_include_path

Tienes que habilitar el incluir_path directiva en el php.ini Archivo para usar el archivo_use_include_path Opción, el tercer argumento de la función file_put_contents (). Abre el php.ini Archivo y elimine el punto y coma (;) desde la parte delantera de la siguiente línea.

include_path = ".:/usr/share/php "

Ejecute el siguiente comando desde el terminal para reiniciar el servidor Apache después de cambiar el php.ini archivo.

$ sudo servicio apache2 reiniciar

Cree un archivo PHP con el siguiente script que escribirá/sobrescribirá el texto con la nueva línea en un archivo de texto existente llamado mi archivo.TXT que se encuentra en la ubicación definida en incluir_path directiva. A continuación, la función file_get_contents () se ha utilizado en el script para verificar el texto se ha escrito correctamente en el archivo o no.

// Establecer el nombre de archivo
$ filename = "myfile.TXT";
// Establecer el valor de la cadena
$ str = "Escribir datos en un archivo usando file_put_contents ().\norte";
// Escribir contenido al archivo
file_put_contents ($ filename, $ str, file_use_include_path) o morir ("No se puede abrir el archivo.");
echo "El contenido del archivo:
";
// Imprimir el contenido del archivo
echo file_get_contents ($ FileName, true);
?>

Producción:

La siguiente salida aparecería después de ejecutar el script anterior si el texto se escribió correctamente en el archivo.

Ejemplo-4: escriba en un archivo creando un directorio

Cree un archivo PHP con el siguiente script que escribirá/sobrescribirá el texto con la nueva línea en un archivo de texto llamado pruebas.TXT ubicado dentro del directorio llamado 'temporario'mediante el uso de una función definida por el usuario nombrada WriteToNfile(). Esta función creará el directorio si el directorio no existe en la ubicación actual antes de escribir en el archivo. A continuación, la función file_get_contents () se usa en el script para verificar si el texto se ha escrito correctamente en el archivo o no.

// Definir funcionar para escribir en el archivo creando directorio si no existe
function writeToFile ($ dir, $ archivo, $ data)
// Crea el directorio si no existe
si(!is_dir ($ dir))
mkdir ($ dir);
// Escribir datos en el archivo
file_put_contents ("$ dir/$ archivo", $ data);

// Inicializar las variables necesarias
$ directorio = 'temporal';
$ FileName = 'Prueba.TXT';
$ str = 'Prueba de contenido del archivo.';
// llame a la función para escribir en el archivo
WriteToToFile ($ Directory, $ FileName, $ STR);
// verificar el archivo existe o no
if (file_exists ("$ Directory/$ FileName"))

echo "El contenido del archivo:
";
// Imprimir el contenido del archivo
echo file_get_contents ("$ Directory/$ FileName");

?>

Producción:

La siguiente salida aparecería después de ejecutar el script anterior si el texto se escribió correctamente en el archivo.

Conclusión

Se han mostrado diferentes formas de escribir contenido a un archivo utilizando la función file_put_put_contents () en los ejemplos de este tutorial para ayudar a los usuarios de PHP a aplicar esta función correctamente en su script.