Portada » Lenguaje PHP » Exportar archivos CSV PHP usando fputcsv()

Exportar archivos CSV PHP usando fputcsv()

Exportar archivos CSV PHP usando fputcsv(). En este tutorial, vamos a exportar registros desde MySQL a un archivo CSV utilizando la función PHP fputcsv(). Sin embargo, al usar la función no necesitamos formatear los datos para exportarlos a un archivo .csv.

Exportar archivos CSV PHP usando fputcsv()

A continuación, veremos puntos claves acerca de este tema.

¿Qué es la función fputcsv()?

La función fputcsv() acepta una matriz de resultados de base de datos y un puntero de recurso de archivo. Esta matriz de resultados se convierte al formato CSV y se escribe en el archivo de .csv de destino con la referencia del puntero de archivo dado.

¿Como crear y descargar un fichero CSV?

PHP es un lenguaje muy flexible y usando algunas funciones y ciclos predeterminados podemos crear y descargar un archivo CSV con contenido de MySQL. Además, usaremos el ciclo WHILE y consultas SQL.

La sintaxis de esta función

fputcsv($file_pointer, $input_array, $delimiter = ',', $enclosure = '"');

Descripción del script:

En este código, estamos creando el puntero de archivo abriendo el flujo de salida PHP. Y luego, establecemos este puntero y la matriz de campos de base de datos en la función fputcsv(). Por lo tanto, se llamará a esta función después de establecer el encabezado con el tipo de contenido, la disposición y el nombre del archivo CSV.

<?php
$conn = mysqli_connect("localhost", "root", "test", "examples");

$filename = "toy_csv.csv";
$fp = fopen('php://output', 'w');

$query = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='examples' AND TABLE_NAME='toy'";
$result = mysqli_query($conn,$query);
while ($row = mysqli_fetch_row($result)) {
$header[] = $row[0];
}

header('Content-type: application/csv');
header('Content-Disposition: attachment; filename='.$filename);
fputcsv($fp, $header);

$query = "SELECT * FROM toy";
$result = mysqli_query($conn, $query);
while($row = mysqli_fetch_row($result)) {
fputcsv($fp, $row);
}
exit;
?>

Descargando Fichero CSV con PHP

Al ejecutar el script se podrá descargar un fichero de extensión CSV y podemos ver el siguiente contenido.

"id","name","code","category","price","stock_count",
"9","Music Aeroplane","TOY#MA01","Music Toys","250","500",
"10","Power Rangers","TOY#BT01","Battery Toys","1000","100",
"11","Remote Car","TOY#RMT01","Remote Control Toys","280","800",
"12","Bubbles","TOY#WT01","Water Games","100","1000",
"13","Cricket Cards","TOY#CD01","Card Games","200","80",
"14","Basket Ball","TOY#BB01","Outdoor Toys","2000","500",
"15","Word Puzzles","TOY#PZ01","Puzzles","200","200",
"16","Water Gun","TOY#WG01","Water Games","100","1000",

Conclusión al usar fputcsv

Hemos logrado generar una descarga dinámica al usar la función fputcsv del PHP y puede usarse en cualquier consulta SQL a través de un ciclo.

Recordemos que al cargar el archivo se generará una descarga directamente desde el navegador web, por otro lado, el archivo generado estará dividido pro comas y puede visualizarse usando Excel.

Espero que este articulo les ayude en sus proyectos web y no se olviden de compartir en sus amigos y redes sociales.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 5 / 5. Recuento de votos: 2

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Privacidad