ThinkPHP下導出Excel


本方法是利用PHPExcel來解決從數據庫導出Excel

首先需要去下載一個PHPExcel放到ThinkPHP目錄下的三方類庫Extend目錄下的Vendor

調用方法      Vendor('PHPExcel.Classes.PHPExcel');

以一個客棧數據來做演示

代碼如下:

 1 public function excel(){
 2         //引入PHPExcel庫文件
 3         Vendor('PHPExcel.Classes.PHPExcel');
 4         //創建對象
 5         $excel = new PHPExcel();
 6         //Excel表格式,這里簡略寫了8列
 7         $letter = array('A','B','C','D','E','F','F','G');
 8         //表頭數組
 9         $tableheader = array('序號','客棧名稱','客棧地址','座機','手機','QQ','郵箱');
10         //填充表頭信息
11         for($i = 0;$i < count($tableheader);$i++) {
12             $excel->getActiveSheet()->setCellValue("$letter[$i]1","$tableheader[$i]");
13         }
14         //表格數組
15         $data = array(
16                 array('1','麗江客棧','昆明市麗江','023-65987458','13598784587','1317615477','batista_bomb@163.com'),
17                 array('2','麗江客棧','昆明市麗江','023-65987458','13598784587','1317615477','batista_bomb@163.com'),
18                 array('3','麗江客棧','昆明市麗江','023-65987458','13598784587','1317615477','batista_bomb@163.com'),
19                 array('4','麗江客棧','昆明市麗江','023-65987458','13598784587','1317615477','batista_bomb@163.com'),
20                 array('5','麗江客棧','昆明市麗江','023-65987458','13598784587','1317615477','batista_bomb@163.com'),
21                 array('6','麗江客棧','昆明市麗江','023-65987458','13598784587','1317615477','batista_bomb@163.com'),
22                 array('7','麗江客棧','昆明市麗江','023-65987458','13598784587','1317615477','batista_bomb@163.com')
23         );
24         //填充表格信息
25         for ($i = 2;$i <= count($data) + 1;$i++) {
26             $j = 0;
27             foreach ($data[$i - 2] as $key=>$value) {
28                 $excel->getActiveSheet()->setCellValue("$letter[$j]$i","$value");
29                 $j++;
30             }
31         }
32         //創建Excel輸入對象
33         $write = new PHPExcel_Writer_Excel5($excel);
34         header("Pragma: public");
35         header("Expires: 0");
36         header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
37         header("Content-Type:application/force-download");
38         header("Content-Type:application/vnd.ms-execl");
39         header("Content-Type:application/octet-stream");
40         header("Content-Type:application/download");;
41         header('Content-Disposition:attachment;filename="客棧信息.xls"');
42         header("Content-Transfer-Encoding:binary");
43         $write->save('php://output');
44     }

前端代碼顯示如下

1 <div class="excel"><input  type="button" value="導出到Excel" onclick="location.href='__ROOT__/admin.php/Admin/excel';"/></div>

導出來的效果如下圖

此方法簡單快捷,希望對朋友們有所幫助!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM