En este artículo vamos a ver cómo usar PHP para remplazar el contenido de un archivo, específicamente será un archivo de texto en donde vamos a reemplazar los saltos de línea (\n
) por comas (,
).
Las funciones que vamos a usar son file_get_contents, file_put_contents y str_replace
.
Como lo dije, vamos a usar un archivo de texto. El contenido del mismo tendrá saltos de línea, mismos que vamos a remplazar, pero por ahora se ve así:
Hola
Soy un archivo
separado
por saltos de
línea
Comenzamos obteniendo el contenido. Para ello, invocamos a file_get_contents
con la ruta del archivo. Después, guardamos el contenido del mismo en una variable de tipo string.
Para convertir los saltos de línea a coma usamos un str_replace
que remplazará el contenido de la cadena.
Finalmente guardamos el contenido ya sustituido en otro archivo y eso sería todo:
<?php
$contenidoOriginal = file_get_contents("original.txt");
$contenidoRemplazado = str_replace("\n", "," ,$contenidoOriginal);
file_put_contents("remplazado.txt", $contenidoRemplazado);
El archivo de salida es el siguiente:
Hola,Soy un archivo,separado,por saltos de,línea
Como ves, se ha logrado remplazar los saltos por coma. Fue un ejemplo sencillo pero sirve para remplazar otro tipo de contenido.
Por cierto, por ahora todo el contenido del archivo se ha cargado en la variable y por lo tanto en la RAM. Si quieres hacer que tu programa ocupe menos espacio en memoria puedes usar un fread
y fwrite
.
Aprovecho para invitarte a leer mis otros artículos de programación sobre PHP.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.