国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - ThinkPHP框架實現導出excel數據的方法示例【基于PHPExcel】

ThinkPHP框架實現導出excel數據的方法示例【基于PHPExcel】

2019-10-07 11:56愛思考的小鳥 PHP教程

這篇文章主要介紹了ThinkPHP框架實現導出excel數據的方法,結合實例形式分析了thinkPHP添加org擴展基于PHPExcel進行Excel數據的導出操作相關實現技巧,需要的朋友可以參考下

本文實例講述了ThinkPHP框架實現導出excel數據的方法。分享給大家供大家參考,具體如下:

在ThinkPHP框架下,導出excel數據的方法示例:

在操作前,應該在系統框架的擴展目錄中添加ORG庫,即要包含ThinkPHP\Extend\Library\ORG\Util\PHPExcel.class.php文件及其相關支持文件。

<?php
header("Content-type: text/html; charset=utf-8");
class MesTestAction extends Action {
  //測試導出excel數據
  public function tpGetExcel() {
    //創建對象
    import("ORG.Util.PHPExcel"); //從PHPExcel目錄導PHPExcel.php類文件
    $excel = new PHPExcel();
    $data = M()->query('SELECT userid,username,stepgoal FROM tp_data_user LIMIT 2775');
    //Excel表格式,這里簡略寫了3列
    $letter = array('A','B','C');
    //表頭數組
    $tableheader = array('userid','用戶名','目標步數');
    $count= count($data);//總的數據行數
    $listNum = 500;//每個sheet頁最大數據行數
    $num = ceil($count/$listNum);//sheet頁個數
    $MuitData = array_chunk($data,$listNum,false);//分割總的數據,每頁最多$listNum行有效數據
  //var_dump($MuitData);//die('as');
  //缺省情況下,PHPExcel會自動創建第一個SHEET,其索引SheetIndex=0
  //設置 當前處于活動狀態的SHEET 為PHPExcel自動創建的第一個SHEET
  $excel->setActiveSheetIndex(0); //objPHPExcel
  //設置sheet的title
  $excel->getActiveSheet()->setTitle('考核得分第'.'1'.'頁');
  //設置sheet的列名稱
    for($k = 0; $k < count($tableheader); ++$k) {
      $excel->getActiveSheet()->setCellValue("$letter[$k]".'1',"$tableheader[$k]");//第一行數據
    }
  //填充表格信息 處理第1塊數據
  $crrntSheetLineNo = count($MuitData[0]) + 1;
  for ( $j = 2; $j <= $crrntSheetLineNo; ++$j) { //遍歷每一行
    $k = 0;
    foreach ( $MuitData[0][$j - 2] as $key => $value ) {//遍歷具體行的某一列
      $excel->getActiveSheet()->setCellValue("$letter[$k]".$j,"$value");//第$k列 第$j行
      $k++;
    }
  }
  //后續的sheet頁及數據塊
    for ( $i = 1; $i <$num; ++$i) {
      //創建第$i個sheet
      $msgWorkSheet = new PHPExcel_Worksheet($excel, '考核得分第'.($i + 1).'頁'); //創建一個工作表
      $excel->addSheet($msgWorkSheet); //插入工作表
      $excel->setActiveSheetIndex($i); //切換到新創建的工作表
      //設置sheet的列名稱
      for($k = 0; $k < count($tableheader); ++$k) {
        $excel->getActiveSheet()->setCellValue("$letter[$k]1","$tableheader[$k]");//第一行數據
      }
      //填充表格信息 處理第$i塊數據
    $crrntSheetLineNo = count($MuitData[$i]) + 1; //var_dump($crrntSheetLineNo);var_dump($MuitData[$i-1]);die('as');
      for ( $j = 2; $j <= $crrntSheetLineNo; ++$j) { //遍歷每一行
        $k = 0;
        foreach ( $MuitData[$i-1][$j - 2] as $key => $value ) {//遍歷具體行的某一列
          $excel->getActiveSheet()->setCellValue("$letter[$k]$j","$value");//第$k列 第$j行
          ++$k;
        }
      }
      usleep(100);
    }
    //創建Excel輸出對象
    $filename = "大獎賽培訓考核得分.xls";
    $write = new PHPExcel_Writer_Excel5($excel);
    ob_end_clean();//清除緩沖區,避免亂碼
  /*
  //輸出到本地
    $write->save( iconv('utf-8', 'gbk', $filename) );
  */
    //輸出到瀏覽器
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
    header("Content-Type:application/force-download");
    header("Content-Type:application/vnd.ms-execl");
    header("Content-Type:application/download");
    header('Content-Type:application/octet-stream');
    $encoded_filename = urlencode($filename);
    $encoded_filename = str_replace("+", "%20", $encoded_filename);
    $ua = $_SERVER["HTTP_USER_AGENT"];
    if (preg_match("/MSIE/", $ua)) {
      header('Content-Disposition: attachment; filename="' . $encoded_filename . '"');
    } else if (preg_match("/Firefox/", $ua)) {
      header('Content-Disposition: attachment; filename*="utf8\'\'' . $filename . '"');
    } else {
      header('Content-Disposition: attachment; filename="' . $filename . '"');
    }
    header("Content-Transfer-Encoding:binary");
    $write->save('php://output');
  }
}
?>

希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 爱免费视频 | 国产啊女在线观看 | 一本一本久久a久久精品综合妖精 | 亚洲综合婷婷 | 99re免费视频精品全部 | 成人日日夜夜 | 日狠狠 | 国产一区亚洲二区三区 | 亚洲毛片在线观看 | 天堂中文视频在线观看 | 日韩欧美一区二区三区免费观看 | 日韩中文字幕在线视频 | 久久99精品久久久久久琪琪 | 一区二区精品视频 | 亚洲精品久久久久久久久久久 | 欧美国产在线观看 | а_天堂中文最新版地址 | 日韩精品专区 | 国产欧美精品一区二区三区 | 亚洲视频在线观看 | 一区二区三区在线播放 | 亚洲国产精品久久久久久 | 午夜伦4480yy私人影院 | 国产成人av在线 | а√天堂资源中文最新版地址 | 亚洲综合视频在线观看 | 国产一区二区三区视频 | 无毒黄网 | 一本一本久久a久久精品综合妖精 | 中文成人在线 | 亚洲一区二区三区免费观看 | 精品二区| 国产亚洲欧美在线 | 99爱视频| 精品九九久久 | 人人爱夜夜爽日日视频 | 精品久久久久久久久久久 | 欧美精品在线观看 | 欧美中文字幕在线 | 在线看亚洲 | 亚洲国产免费 |