GeraExcel(); for ($i=0; $iMontaConteudo(0,$i,$tit[$i]); } $qr=$db->execute($sql); $j=1; while ($reg=$qr->fetchrow()) { for ($i=0; $iMontaConteudo($j,$i,$reg[$i]); } $j++; } $this->GeraArquivo(); } } class GeraExcel{ // define parametros(init) function GeraExcel(){ $this->armazena_dados = ""; // Armazena dados para imprimir(temporario) $this->ExcelStart(); }// fim constructor // Monta cabecario do arquivo(tipo xls) function ExcelStart(){ //inicio do cabecario do arquivo $this->armazena_dados = pack( "vvvvvv", 0x809, 0x08, 0x00,0x10, 0x0, 0x0 ); } // Fim do arquivo excel function FechaArquivo(){ $this->armazena_dados .= pack( "vv", 0x0A, 0x00); } // monta conteudo function MontaConteudo( $excel_linha, $excel_coluna, $value){ $tamanho = strlen( $value ); $this->armazena_dados .= pack( "v*", 0x0204, 8 + $tamanho, $excel_linha, $excel_coluna, 0x00, $tamanho ); $this->armazena_dados .= $value; }//Fim, monta Col/Lin // Gera arquivo(xls) function GeraArquivo(){ //Fecha arquivo(xls) $this->FechaArquivo(); header("Content-type: application/zip"); //header("Content-type: text/x-comma-separated-values"); header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header("Content-disposition: inline; filename=excel.xls"); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header("Pragma: public"); print ( $this->armazena_dados); }// fecha funcao # Fim da classe que gera excel } ?>