| <?php /** * Phpexcel Generate Excel files * @author: Firmy * @desc supports arbitrary row and column data to generate Excel files, no cell styles and snaps are added */ Require_once ' library/phpexcel.php '; Require_once ' library/phpexcel/reader/excel2007.php '; Require_once ' library/phpexcel/reader/excel5.php '; Include_once ' library/phpexcel/iofactory.php '; $fileName = "Test_excel"; $HEADARR = Array ("First column", "second column", "third column"); $data = Array (array (1,2), array (1,3), array (5,7)); Getexcel ($fileName, $HEADARR, $data); function Getexcel ($fileName, $HEADARR, $data) { if (Empty ($data) | |!is_array ($DATA)) { Die ("Data must be a array"); } if (empty ($fileName)) { Exit } $date = Date ("Y_m_d", Time ()); $fileName. = "_{$date}.xlsx"; Create a new Phpexcel object $objPHPExcel = new Phpexcel (); $objProps = $objPHPExcel->getproperties ();
To set the table header $key = Ord ("A"); foreach ($headArr as $v) { $colum = Chr ($key); $objPHPExcel->setactivesheetindex (0)->setcellvalue ($colum. ' 1 ', $v); $key + 1; }
$column = 2; $objActSheet = $objPHPExcel->getactivesheet (); foreach ($data as $key => $rows) {//row write $span = Ord ("A"); foreach ($rows as $keyName => $value) {//Column write $j = Chr ($span); $objActSheet->setcellvalue ($j. $column, $value); $span + +; } $column + +; } $fileName = Iconv ("Utf-8", "gb2312", $fileName); Renaming tables $objPHPExcel->getactivesheet ()->settitle (' simple '); Set the activity single index to the first table, so Excel opens this is the first table $objPHPExcel->setactivesheetindex (0); REDIRECT output to a client Web browser (Excel2007) Header (' Content-type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet '); Header ("content-disposition:attachment; Filename= "$fileName"); Header (' cache-control:max-age=0 '); $objWriter = Phpexcel_iofactory::createwriter ($objPHPExcel, ' Excel2007 '); if (!empty ($_get[' Excel ')) { $objWriter->save (' php://output '); Files are downloaded through the browser }else{ $objWriter->save ($fileName); Script to run, save in the current directory } Exit } |