Hojas de cálculo excel con php
Desde hace algun tiempo me veo obligado a generar estadísticas y de mas informes que en algunos casos es muy útil exportarlos a hojas de cálculo. Hasta ahora exportaba esos datos generando archivos csv que luego importaba desde Excel, OpenOffice.org Clac o cualquier otra Hoja de Cálculos, pero es bastante limitado puesto que no se pueden generar hojas separadas (al menos que yo sepa) en un mismo documento, ni se le puede dar formato a las celdas, además de lo incordioso que es tener que importar los datos con la hoja de cálculo.
La solución la he encontrado hoy, aunque ya es bastante antigua, un paquete de PEAR para generar hojas de cálculo excel en formato nativo y con muchas posibilidades. El paquete es Spreadsheet_Excel_Writer.
Es obvio que teneis que tener instalado PEAR, y una vez satisfecho este requisito, solo teneis que bajar el paquete y su única dependencia: el paquete OLE. Una vez descargados los paquetes solo debeis hacer:
pear install OLE-x.x.tgz pear install Spreadsheet_Excel_Writer-x.x.x.tgz
A partir de aquí solo queda hacer el código php para generar las hojas de cálculo. Un ejemplo sencillo:
< ? //incluimos la libreria require_once 'Spreadsheet/Excel/Writer.php'; //damos nombre al documento $filename="prueba.xls"; //abrimos un nuevo documento $docexcel = new Spreadsheet_Excel_Writer(); //abrimos una hoja del documento $nuevahoja =& $docexcel->addWorksheet(”Titulo de la Hoja”); //escribimos en sus celdas $fila=0; $columna=0; $valor=”Hola”; $nuevahoja->write($fila, $columna, “$valor_de_la_celda”); //enviamos el documento para descargarlo y lo cerramos $docexcel->send($filename); $docexcel->close(); ?>
Como he dicho también se le puede dar formato a las celdas, podeis encontrar como hacerlo en la documentación.


