Snippet: generar fácilmente un archivo CSV con PHP

Generar un archivo CSV es una de esas tareas que probablemente a todos nos ha tocado hacer, y aun más probable es que nos terminemos ahogando en un vaso de agua cuando en realidad es algo bastante simple.

No es necesario preocuparnos por tener que escapar caracteres ni escribir demasiado código, ya que a partir de PHP 5.1.0 contamos con la función fputcsv() que se ocupa de prácticamente todo. Un ejemplo sencillo para generar un archivo descargable a partir de una consulta cualquiera a una base de datos:

La función recibe dos parámetros: un archivo (abierto con fopen()) y un array de valores. En el ejemplo, se muestra una forma de generar un archivo CSV descargable a partir de una consulta a la base de datos (utilizando la clase wpdb de WordPress, aunque obviamente podría aplicar para cualquier otro caso).

Por supuesto, también existe la función complementaria para leer un archivo CSV, fgetcsv().