php export file format Execl


:( supports a variety of methods Execl format)
/ ** 
* deriving the PHP package Execl
* @param String $ expTitle file name (excluding extension)
* @param Array $ expCellName navigation header data, two-dimensional array, $ expCellName = [[ 'id ', ' number'] , [ 'mobile', 'phone'], [ 'createat', ' time']]
* @param array $ expTableData data, two-dimensional array
* /
function exportExcel ($ expTitle, expCellName $, $ expTableData) {
$ = xlsTitle iconv ( 'utf-8', 'gb2312', $ expTitle); // file name
$ fileName = $ expTitle.date ( '_ YmdHis'); // or $ xlsTitle file name may be set according to its own
$ cellNum = count (expCellName $);
$ dataNum = COUNT ($ expTableData);

Vendor ( "PHPExcel.PHPExcel");

$ objPHPExcel = new new \ PHPExcel ();
$ cellName = array ( 'A' , 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', ' L ',' M ',' N ',' O ',' P ',' Q ',' R ',' S ',' T ',' U ',' V ',' W ',' X ' , 'Y', 'Z' , 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ', ' AK ',' AL ',' AM ',' AN ',' AO ',' AP ',' AQ ',' AR ',' AS ',' AT ',' AU ',' AV ',' AW ' , 'AX', 'AY', 'AZ');

// $ objPHPExcel-> getActiveSheet (0) -> MergeCells ( 'A1:'.. $ cellName [$-cellNum. 1] '. 1'); // merge cells
// $ objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', $expTitle.' Export time:'.date('Y-m-d H:i:s'));
for($i=0;$i<$cellNum;$i++){
$objPHPExcel->setActiveSheetIndex(0)->setCellValue($cellName[$i].'1', $expCellName[$i][1]);
}

for($i=0;$i<$dataNum;$i++){
for($j=0;$j<$cellNum;$j++){
$objPHPExcel->getActiveSheet(0)->setCellValue($cellName[$j].($i+2), $expTableData[$i][$expCellName[$j][0]]);
}
}

header('pragma:public');
header('Content-type:application/vnd.ms-excel;charset=utf-8;name="'.$xlsTitle.'.xls"');
header("Content-Disposition:attachment;filename=$fileName.xls");
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;
}




Method Two :( older format)
/ ** 
* Export csv file
* @param string $ filename file name (excluding extension)
* @param String $ Fields navigation head column headings, for example: $ Fields = [ 'number', 'Order Number / recharge serial number '' device number ',' role ',' name ',' phone number ',' total amount ',' share ratio ',' amount of revenue ',' channel ',' time '];
* @param String $ Fields navigation database parameters corresponding to the head, for example: $ fields = [ 'id' , 'order_no', 'macno', 'user_type', 'nickname', 'mobile', 'total_money', 'discount', 'money', 'log', 'createat'];
* @param $ data array data, two-dimensional array
* /
function export_to_csv ($ filename, $ Fields, Fields $, $ data)
{
// clear the buffer
ob_end_clean ();
header ( " Content-Type: text / html; charset = utf-8 ");
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=$filename.xls");

// $ Fields = [ 'number', 'order number / serial number recharge', 'device number', 'role', 'Name', 'phone number', 'total amount', 'share ratio', 'amount of revenue ',' channel ',' time '];
// Fields $ = [' ID ',' order_no ',' MACNO ',' user_type ',' Nickname ',' Mobile ',' total_money ',' Discount ',' Money ',' log ',' createat '];

echo "<Table borderColor =' Gray 'border ='. 1 'cellspacing =' 0 'style =" border-Collapse: Collapse; font-Family: Microsoft elegant black ">" ;
echo "<TR>";

// echo "<pre>";
// print_r ($ Fields); Die;

the foreach (Fields AS $ $ V) {
.. echo "<TH>" $ V "</ TH > ";
}
echo "</tr>";
/***********头部结束********************/
if($data){
foreach($data as $k => $v){
echo "<tr>";
foreach($fields as $v1){
if($v1 == 'id'){
$v[$v1] = $k+1;
}
echo "<td style='vnd.ms-excel.numberformat:@'>".$v[$v1]."</td>";
}
echo "</tr>";
}
echo "</table>";
}else{
echo "<tr><td>暂无数据</td></tr>";
echo "</table>";
}
echo exit;
}

Guess you like

Origin www.cnblogs.com/hai2018/p/10984678.html