Manipulación de archivos CSV con PHP

Los archivos en formato CSV (separados por comas) pueden parecer anticuados, sin embargo su sencillez lo convierten en un muy buen aliado a la hora de migrar información de una plataforma a otra.

Gestionarlos desde PHP de manera “nativa” no es algo complicado, sin embargo si tenemos que agregar, quitar, modificar o directamente eliminar valores puede que nos encontremos con pequeños problemas que nos ocasionen unos dolores de cabeza. Para agilizar este trabajo es que existe la biblioteca Bakame.csv.

biblioteca php para manipular csv

Bakame es una biblioteca escrita en PHP, disponible para su utilización desde la versión 5.4 o superior, que facilita considerablemente el trabajo de operar con archivos en formato CSV.

Bakame tiene como principal ventaja la de brindarnos una serie de métodos para una limpia y correcta manipulación de archivos separados por comas, simplemente inicializando una clase podremos acceder a un completo abanico de posibilidades, ahorrando el tiempo que requiere escribir una biblioteca propia que haga esta misma labor.

Otro aspecto interesante de este proyecto es que se puede configurar rápidamente, mediante los mecanismos provistos podemos definir aspectos básicos como el caracter a utilizar para delimitar o bien escapar una cadena, como así también la codificación a utilizar.

$reader = new Reader('/path/to/your/csv/file.csv');

$reader->setDelimeter(',');
$reader->setEnclosure('"');
$reader->setEscape('\\');
$reader->setFlags(SplFileObject::READ_AHEAD|SplFileObject::SKIP_EMPTY);
$reader->setEncoding('iso-8859-1');

Otro aspecto a destacar es el relacionado a la salida de datos, por ejemplo podemos optar por convertir un archivo CSV a una tabla HTML en apenas una linea de código. También podemos utilizar como salida el formato JSON o XML, un aspecto que de seguro nos permitirá ahorrar tiempo y recursos.

echo $writer->toHTML('table table-bordered table-hover');

Les recomiendo visitar el sitio oficial del proyecto, van a encontrar varios ejemplos y tendrán la posibilidad de conocer más acerca de esta muy buena biblioteca.

Web: Bakame.csv

Categorizado en: