PHP 导出Excel示例分享

下载phpExcel_1.8.0_doc.zip http://phpexcel.codeplex.com/,将解压后的文件夹里的Classes上传到网站的根目录下,Classes目录内的内容如下:

导出文件Excel.php

require_once dirname(__FILE__).'/Classes/phpExcel.php';//引入phpExcel.....此处略去从数据库获取数据的过程,$a为需要导出的数组......$numArr = 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');// Create new phpExcel object$objphpExcel = new phpExcel();$arr = array('订单号','下单时间','城市','地区', '客户名称', '收货人', '联系电话', '收货地址', 'ERP客户名称', '物流系统客户名称', '活动项目', '品牌', '型号', '颜色', '物流系统型号', '订货量', '单价', '代收货款', '红包', '价保返利', '运费', '实收金额', '付款方式', '订单来源', '上游厂商', '是否在仓', '快递面单号', '订单状态', '确认时间', '末次状态确认时间', '描述', '对应业务', '对应客服', '商家留言', '下单摘要', '业务员', '联系方式');// 输出标题echo date('H:i:s') , " Add some data" , EOL;//设置换行$objphpExcel->getActiveSheet()->getStyle('H')->getAlignment()->setWrapText(true);$objphpExcel->getActiveSheet()->getStyle('Y')->getAlignment()->setWrapText(true);//设置相应列的宽度$objphpExcel->setActiveSheetIndex(0)->getColumnDimension('A')->setWidth(15);$objphpExcel->setActiveSheetIndex(0)->getColumnDimension('B')->setWidth(20);$objphpExcel->setActiveSheetIndex(0)->getColumnDimension('G')->setWidth(15);$objphpExcel->setActiveSheetIndex(0)->getColumnDimension('H')->setWidth(40);$objphpExcel->setActiveSheetIndex(0)->getColumnDimension('I')->setWidth(15);$objphpExcel->setActiveSheetIndex(0)->getColumnDimension('J')->setWidth(15);//输出第一行$objphpExcel->setActiveSheetIndex(0)   ->setCellValue('A1', $arr[0]) ->setCellValue('B1', $arr[1]) ->setCellValue('C1', $arr[2]) ->setCellValue('D1', $arr[3]) ->setCellValue('E1', $arr[4]) ->setCellValue('F1', $arr[5]) ->setCellValue('G1', $arr[6]) ->setCellValue('H1', $arr[7]) ->setCellValue('I1', $arr[8]) ->setCellValue('J1', $arr[9])   ->setCellValue('K1', $arr[10])   ->setCellValue('L1', $arr[11]);//输出内容for($i=0;$i<count($a);$i++){ $objphpExcel->setActiveSheetIndex(0)  ->setCellValue($numArr[0].($i+2), $a[$i]['order_sn'])  ->setCellValue($numArr[1].($i+2), $a[$i]['add_time'])  ->setCellValue($numArr[2].($i+2), $a[$i]['city'])  ->setCellValue($numArr[3].($i+2), $a[$i]['region_name'])  ->setCellValue($numArr[4].($i+2), $a[$i]['company'])  ->setCellValue($numArr[5].($i+2), $a[$i]['consignee'])  ->setCellValue($numArr[6].($i+2), $a[$i]['mobile'])  ->setCellValue($numArr[7].($i+2), $a[$i]['address'])  ->setCellValue($numArr[8].($i+2), '')  ->setCellValue($numArr[9].($i+2), '')  ->setCellValue($numArr[10].($i+2), '')  ->setCellValue($numArr[11].($i+2), $a[$i]['brand_name']);}// Rename worksheetecho date('H:i:s') , " Rename worksheet" , EOL;$dirName = date("Ymd");//目录名$fileName = date("YmdHis");//文件名$objphpExcel->getActiveSheet()->setTitle($fileName);// Set active sheet index to the first sheet, so Excel opens this as the first sheet$objphpExcel->setActiveSheetIndex(0);// Save Excel 2007 fileecho date('H:i:s') , " Write to Excel2007 format" , EOL;$callStartTime = microtime(true);if(!opendir('../excel/'.$dirName)){ mkdir('../excel/'.$dirName);}$objWriter = phpExcel_IOFactory::createWriter($objphpExcel, 'Excel2007');$objWriter->save('../excel/'.$dirName.'/'.$fileName.'.xlsx');$end = getCurrentTime();$spend = $end-$begin;if ($spend > 30){ echo '<script>if(confirm("执行超时!")){ window.history.back(-1);}</script>'; exit;}header('Location:http://'.$_SERVER['HTTP_HOST'].'/excel/'.$dirName.'/'.$fileName.'.xlsx');

php技术PHP 导出Excel示例分享,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。