Thinkphp 3.2.2 利用phpexcel完成excel导出功能
生活随笔
收集整理的這篇文章主要介紹了
Thinkphp 3.2.2 利用phpexcel完成excel导出功能
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
首先百度搜索phpexcel ?包,放到項(xiàng)目的這個(gè)目錄下
接下來(lái) ?是controller里的導(dǎo)出代碼?
public function expUser(){// $p_name = $_POST['order_p_name'];$m = M ('order_list');// $datas['order_p_name'] = $p_name;$data = $m->field('order_id,order_p_name,order_p_price,order_p_username,order_p_tel,order_time')->select();foreach ($data as $k => $v){$data[$k]['order_time']=$v['order_time']=date('Y-m-d',$v['order_time']);}//導(dǎo)入PHPExcel類(lèi)庫(kù),因?yàn)镻HPExcel沒(méi)有用命名空間,只能inport導(dǎo)入import("Org.Util.PHPExcel");import("Org.Util.PHPExcel.Writer.Excel5");import("Org.Util.PHPExcel.IOFactory.php");$filename="test_excel";$headArr=array("編號(hào)","名稱","價(jià)格","姓名","電話","日期");$this->getExcel($filename,$headArr,$data); }private function getExcel($fileName,$headArr,$data){//對(duì)數(shù)據(jù)進(jìn)行檢驗(yàn)if(empty($data) || !is_array($data)){die("data must be a array");}//檢查文件名if(empty($fileName)){exit;}$date = date("Y_m_d",time());$fileName .= "_{$date}.xls";//創(chuàng)建PHPExcel對(duì)象,注意,不能少了\$objPHPExcel = new \PHPExcel();$objProps = $objPHPExcel->getProperties();//設(shè)置表頭$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){ //行寫(xiě)入$span = ord("A");foreach($rows as $keyName=>$value){// 列寫(xiě)入$j = chr($span);$objActSheet->setCellValue($j.$column, $value);$span++;}$column++;}$fileName = iconv("utf-8", "gb2312", $fileName);//重命名表// $objPHPExcel->getActiveSheet()->setTitle('test');//設(shè)置活動(dòng)單指數(shù)到第一個(gè)表,所以Excel打開(kāi)這是第一個(gè)表$objPHPExcel->setActiveSheetIndex(0);ob_end_clean();ob_start();header('Content-Type: application/vnd.ms-excel');header("Content-Disposition: attachment;filename=\"$fileName\"");header('Cache-Control: max-age=0');$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');$objWriter->save('php://output'); //文件通過(guò)瀏覽器下載exit;}前臺(tái)html里直接調(diào)用就可以了
總結(jié)
以上是生活随笔為你收集整理的Thinkphp 3.2.2 利用phpexcel完成excel导出功能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Ajax中什么时候用同步,什么时候用异步
- 下一篇: php 二维数组去重