Crear archivos Excel desde PHP

Bueno, hace ya varios posts, publique algo acerca de como crear archivos PDF’s desde codigo PHP, algo que sin dudo me imagino que a muchos le ha sido de gran utilidad. Ahora les traigo algunas clases para crear archivos excel a partir de codigo PHP, aunque algunos dirán que se puede hacer con solo agregar el encabezado correcto, pero es muy limitado los recursos que se puede hacer con esta forma.

Para los que no saben como hacer los excel con solo agregar un encabezado aqui les dejo este:

// Funciona solo en Linux
if(strpos($_SERVER['HTTP_USER_AGENT'],"Linux") !== FALSE)
{
header('Content-type: application/vnd.ms-excel');
header("Pragma: no-cache");
header("Expires: 0");
header("Content-disposition: attachment; filename=nombre_archivo.xlsx");
}
// Funciona solo en Windows
else if (strpos($_SERVER['HTTP_USER_AGENT'],"Windows") !== FALSE)
{
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Disposition: attachment;filename=nombre_archivo.xls");
header("Content-Transfer-Encoding: binary ");
}

Con este encabezado ustedes pueden forzar al navegador a que descargue el codigo html que se genero y lo devuelva como un archivo de excel. Bueno esto no tiene gran ciencia.

Ahora lo interesante es que existen algunas clases o librerias que proporcionan muchas funcionalidades de las cuales no se puede obtener con solo colocar el encabezado, como por ejemplo colocar una imagen al archivo excel. Bueno les listo las clases que he utilizado de la mejor, segun un punto personal, a la que menos me a gustado:

  • PHPExcel: es una pequeña librería muy robusta que nos provee de las clases php necesarias tanto para crear como para leer ficheros Excel desde sin demasiadas complicaciones, sin duda, en lo personal, la mejor. Tiene muy buena documentacion y ejemplos que ilustran el funcionamiento de esta excelente libreria.
  • MS-Excel Stream Handler: Para ser sinceros esta no la he testeado.
  • PHP Excel Reader: Muy util.
  • reportes-php-excel: Derivada de php_writeexcel.
  • php_writeexcel: La mas sencilla de todas

Bueno ahi les dejo el abanico de posibilidades para que elijan cual les conviene mas según sus necesidades, no coloque ejemplos de como utilizarlas porque en las paginas oficiales esta todo un arsenal de ejemplos y codigos, ademas de manual de referencia, los cuales pueden consultar y explicar mejor el funcionamiento de la libreria.

Anuncios