Crear y leer archivos Excel con PHP

Hoy en día Microsoft Excel es uno de los gestores de planillas de cálculo mas utilizados en todo el mundo, mas allá de que Google Docs sea muy simple, gratis y online, el Excel es uno de los pilares dentro de la suite de Microsoft. Es por eso que cuando creamos una aplicación buscando ser lo mas útil para el usuario debemos contemplar la opción de permitir exportar la información para ser visualizada en Excel, para eso les voy a recomendar una clase php para generar documentos xls realmente simple.

PHP Excel Creator library es una pequeña librería que nos provee de las clases php necesarias tanto para crear como para leer ficheros Excel desde PHP sin demasiadas complicaciones, yo la conocí hace unos días gracias a Juokaz y la verdad que desde que la vengo utilizando no tengo ninguna complicación, la implementación de esta clase es sencilla, a continuación coloco el mismo ejemplo que utilice yo cuando la utilice por primera vez.

[PHP]
require (‘..path/Writer.php’);

$filename = ‘myFile.xls’;

$workbook = new Spreadsheet_Excel_Writer();
$workbook->send($filename);

// Look at documentation
$workbook->setVersion(8);
// Temporary files directory
$workbook->setTempDir(‘/tmp’);

$worksheet =& $workbook->addWorksheet(‘Items’);
$worksheet->setInputEncoding(‘UTF-8’);
$worksheet->setMargins(0.25);
$worksheet->centerHorizontally(1);

$worksheet->activate();

$format_header =& $workbook->addFormat();
$format_header->setBold();
$format_header->setSize(12);

$worksheet->write(0, 0, ‘Code’,$format_header);
$worksheet->setColumn(0, 0, 30);
$worksheet->write(0, 1, ‘Title’,$format_header);
$worksheet->setColumn(1, 1, 50);

$format_row =& $workbook->addFormat();
$format_row->setSize(12);

foreach ($items as $item)
{
$worksheet->writeString($i, 0, $item->code, $format_row);
$worksheet->writeString($i, 1, $item->title, $format_row);
}

$workbook->close();
[/PHP]

Como verán la utilización de esta clase no tiene demasiada complejidad, además con solo un valor podemos definir la versión de Excel con la que queremos generar el archivo, y de paso nos olvidamos de toda la complejidad que tiene parsear un documento de Excel a “mano”.

Otra clase que había probado hace tiempo y me pareció muy buena también es phpexcel, pero la verdad para el uso que le doy yo las dos se comportan de forma muy similar, quizás para grandes requerimientos a fin de evitar un alto consumo de recursos la ultima clase que les comento sea un poco mejor, pero esto había que confirmarlo con algunos benchmarks.

Por el momento sigo muy contento con PHP Excel Creator library 😀

Categorizado en: