使用PHPExcel實現資料大量匯出為excel表格的方法

來源:互聯網
上載者:User
下面小編就為大家帶來一篇使用PHPExcel實現資料大量匯出為excel表格的方法(必看)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

首先需要下載PHPExecel類檔案,協助文檔可以參考PHPExcel中文協助手冊|PHPExcel使用方法。

下面直接上例子,是我自己寫的一個簡單的大量匯出資料為excel的例子

前台頁面 比較簡單,就是一個超連結,跳轉到處理頁面,超連結也可以跟一些參數(看需求)!


<a href="./Process1.php" rel="external nofollow" >匯出excel表格</a>

後台Process.php頁面


/*** 大量匯出資料* @param $arr 從資料庫查詢出來,即要匯出的資料*  $name excel表歌名*/function expExcel($arr,$name){  require_once 'PHPExcel.php'; //執行個體化 $objPHPExcel = new PHPExcel(); /*右鍵屬性所顯示的資訊*/  $objPHPExcel->getProperties()->setCreator("zxf")  //作者       ->setLastModifiedBy("zxf")  //最後一次儲存者       ->setTitle('資料EXCEL匯出')  //標題       ->setSubject('資料EXCEL匯出') //主題       ->setDescription('匯出資料')  //描述       ->setKeywords("excel")   //標記       ->setCategory("result file");  //類別 //設定當前的表格  $objPHPExcel->setActiveSheetIndex(0); // 設定表格第一行顯示內容 $objPHPExcel->getActiveSheet()  ->setCellValue('A1', '業主姓名')  ->setCellValue('B1', '密碼')  ->setCellValue('C1', '手機號碼')  ->setCellValue('D1', '地址')  //設定第一行為紅色字型  ->getStyle('A1:D1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED); $key = 1; /*以下就是對處理Excel裡的資料,橫著取資料*/ foreach($arr as $v){ //設定迴圈從第二行開始 $key++;  $objPHPExcel->getActiveSheet()     //Excel的第A列,name是你查出數組的索引值欄位,下面以此類推     ->setCellValue('A'.$key, $v['name'])      ->setCellValue('B'.$key, $v['pwd'])     ->setCellValue('C'.$key, $v['phone'])     ->setCellValue('D'.$key, $v['address']); } //設定當前的表格  $objPHPExcel->setActiveSheetIndex(0);   ob_end_clean();  //清除緩衝區,避免亂碼  header('Content-Type: application/vnd.ms-excel'); //檔案類型  header('Content-Disposition: attachment;filename="'.$name.'.xls"'); //檔案名稱  header('Cache-Control: max-age=0');  header('Content-Type: text/html; charset=utf-8'); //編碼  $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');  //excel 2003  $objWriter->save('php://output');   exit;}/***********調用**********************/header("Content-type:text/html;charset=utf-8");//連結資料庫$link = @mysql_connect('localhost','root','') or die('串連資料庫失敗');mysql_select_db('test',$link);mysql_query('set names utf8');//先擷取資料$sql = "select * from house";$res = mysql_query($sql);$arr = array();//把$res=>$arr,把結果集內容轉移到一個數組中while ($row = mysql_fetch_assoc($res)){ $arr[] = $row;}//excel表格名$name = "使用者表";//調用expExcel($arr,$name)

使用PHPExcel匯出資料至此完畢,對於使用PHPExcel匯入到資料庫可以參看使用PHPExcel實現資料批量上傳到資料庫

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.