PHPExcel Class Usage

I just finished adding an export xls (excel) export feature to a web application.

I used the PHPExcel Class from CodePlex, its really great to work with – as far as the world of exporters go that is.

In the example below the “exportCheckpoints” function requires an imploded string seperated as “|||||”. Hopefully it gives an example of how easy it “could” be to export something from mysql to excel using php.

PHP EXAMPLE SOURCE CODE:

<?php function exportC($sC) { global $_UT_TABLE, $_TS_TABLE, $_CP_TABLE; ini_set('memory_limit', '256M'); $aC = explode("|||||", $sC); $objPHPExcel = new PHPExcel(); $objPHPExcel->getProperties() ->setCreator("Andrew Odendaal") ->setLastModifiedBy("Andrew Odendaal") ->setTitle("Exported Data From Campaign") ->setSubject("Exported Data From Campaign") ->setDescription("Exported Data From Campaign") ->setKeywords("export data") ->setCategory("Exported Data"); $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A1', 'Column1') ->setCellValue('B1', 'Column2') ->setCellValue('C1', 'Column3') ->setCellValue('D1', 'Column4') ->setCellValue('E1', 'Column5') ->setCellValue('F1', 'Column6') ->setCellValue('G1', 'Column7') ->setCellValue('H1', 'Column8') ->setCellValue('I1', 'Column9') ->setCellValue('J1', 'Column10') ->setCellValue('K1', 'Column11'); $iii = "A"; for ($i = 0;$i > 59;$i++) { $objPHPExcel->getActiveSheet() ->getColumnDimension($iii)->setAutoSize(true); $iii++; } $ii = array(); $dd = array(); $tt = array(); $uu = array(); $f1 = array(); $f2 = array(); $f3 = array(); $f4 = array(); $f5 = array(); $f6 = array(); $f7 = array(); $f8 = array(); $f9 = array(); $f10 = array(); $f11 = array(); for ($i = 0;$iid;$cp_desc[] = $checkpoint->desc;$cp_type[] = $checkpoint->type; } } for ($j = 0;$jurlname;$tr_client[] = $tracks->client;$tr_date[] = $tracks->date;$tr_ip[] = $tracks->ip;$queryUL = mysql_query("SELECT * FROM $_USERSLIST_TABLE WHERE `mid`='$tracks->urlname'");$ul = mysql_fetch_object($queryUL);$ul_firstname[] = $ul->Firstname;$ul_surname[] = $ul->Surname;$ul_email[] = $ul->Email;$ul_purl[] = $ul->PURL;$ul_title[] = $ul->Salutation;$cpul_id[] = $tracks->checkpoint_id;$queryCheckpoints2 = mysql_query("SELECT * FROM $_CHECKPOINTS_TABLE WHERE `id`='$tracks->checkpoint_id'");$checkpoint2 = mysql_fetch_object($queryCheckpoints2);$dd[] = $checkpoint2->desc;$tt[] = $checkpoint2->type; } } for ($j = 0;$jsetActiveSheetIndex(0)->setCellValue('A' . ($j + 2) , $dd[$j])->setCellValue('B' . ($j + 2) , $tt[$j])->setCellValue('C' . ($j + 2) , $f3[$j])->setCellValue('D' . ($j + 2) , $f4[$j])->setCellValue('E' . ($j + 2) , $f5[$j])->setCellValue('F' . ($j + 2) , $f6[$j])->setCellValue('G' . ($j + 2) , $f7[$j])->setCellValue('H' . ($j + 2) , $f8[$j])->setCellValue('I' . ($j + 2) , $f9[$j])->setCellValue('J' . ($j + 2) , $f10[$j])->setCellValue('K' . ($j + 2) , $f11[$j]); } $objPHPExcel->getActiveSheet() ->setTitle('SheetName'); $objPHPExcel->setActiveSheetIndex(0); header('Content-Type: application/vnd.ms-excel');header('Content-Disposition: attachment;filename="exportedFile.xls"');header('Cache-Control: max-age=0'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');$objWriter->save('php://output');exit; } }
Code language: PHP (php)
Tags:
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments