1. 程式人生 > >PHP 將資料匯出到Excel

PHP 將資料匯出到Excel

require_once 'PHPExcel/PHPExcel.php';//下載PHPExcel
/**
 * 匯出Excel
 * @param $data Array 匯出的資料
 */
function expUser($data){

    // 建立一個處理物件例項 
    $objExcel = new \PHPExcel();
    // 建立檔案格式寫入物件例項, uncomment 
    $objProps = $objExcel->getProperties();
    //設定建立者
    $objProps->setCreator('admin');
    //描述
    $objProps->setDescription("pprt");
    $objActSheet = $objExcel->getActiveSheet();
    //單元格賦值 
    $objActSheet->setCellValue('A1', 'imei號');  // 字串內容  
    $objActSheet->setCellValue('B1', '日期');
    $objActSheet->setCellValue('C1', '消耗電量');
    $objActSheet->setCellValue('D1', '檔案大小');
    $objActSheet->setCellValue('E1', '有效時間');
    $objActSheet->setCellValue('F1', '包率');

    $num = 1;
    foreach ($data as $k => $v) {
        $temp_date_arr = $v;
        foreach ($temp_date_arr as $key_date => $val_date){
            $num = $num + 1;
            $objActSheet->setCellValueExplicit('A' . $num, $k, PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('B' . $num, $key_date, PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('C' . $num, $val_date['total_use'].'%', PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('D' . $num, $val_date['total_size'], PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('E' . $num, $val_date['total_time'], PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('F' . $num, $val_date['pack_rate'], PHPExcel_Cell_DataType::TYPE_STRING);
            //設定行的屬性
            $objActSheet->getRowDimension($num)->setRowHeight('20px');//設定行高
            $objActSheet->getColumnDimension('F')->setAutoSize(true);//設定自動寬度
        }
        $num = $num + 1;
    }

    //設定行的屬性
    $objActSheet->getRowDimension(1)->setRowHeight('20px');//設定行高

    //設定列的屬性
    $objActSheet->getColumnDimension("A")->setWidth('20px'); // 設定寬度
    $objActSheet->getColumnDimension("B")->setWidth('20px'); // 設定寬度
    $objActSheet->getColumnDimension("C")->setWidth('20px'); // 設定寬度
    $objActSheet->getColumnDimension("D")->setWidth('20px'); // 設定寬度
    $objActSheet->getColumnDimension("E")->setWidth('20px'); // 設定寬度
    $objActSheet->getColumnDimension("F")->setWidth('20px'); // 設定寬度

    //匯出的檔名
    $outputFileName = iconv('UTF-8', 'gb2312', 'imei_' . time() . '.xls');

    //直接匯出檔案
    // PHPExcel_IOFactory::createWriter($objExcel, 'Excel5')->save($outputFileName);

    //檔案直接輸出到瀏覽器
    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-excel');
    header('Content-Type:application/octet-stream');
    header('Content-Type:application/download');
    header('Content-Disposition:attachment;filename=' . $outputFileName);
    header('Content-Transfer-Encoding:binary');
    PHPExcel_IOFactory::createWriter($objExcel, 'Excel5')->save('php://output');

    //設定對齊方式	
    $objStyleA3 = $objActSheet->getStyle('A3');
    $objAlignA3 = $objStyleA3->getAlignment();
    $objAlignA3->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
    $objAlignA3->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
}

相關推薦

PHP 資料匯出Excel

require_once 'PHPExcel/PHPExcel.php';//下載PHPExcel /** * 匯出Excel * @param $data Array 匯出的資料 */ function expUser($data){ // 建立一個處理物

js 實現純前端資料匯出excel。chome瀏覽器 親測有效。

有了新的需求 所以就瞭解下怎麼用js 直接匯出excel文件。 html程式碼 <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" cont

js 實現純前端資料匯出excel兩種方式,親測有效

由於專案需要,需要在不呼叫後臺介面的情況下,將json資料匯出到excel表格,參考了好多資料以及很多大佬寫的部落格終於實現,相容chrome沒問題,其他還沒有測試過,這邊介紹兩種實現方式,並附上程式碼和gif動圖,博主不才還望輕噴方法一將table標籤,包括tr、td等對j

使用php資料匯入excel的簡單方法

<1>新增header頭來實現匯入 <?php header("Content-type:application/vnd.ms-excel"); header("Co

ThinkPHP資料匯出Excel表中 4種姿勢呼叫Event事件

<?php namespace Home\Event; class ExportExcelEvent{ /** * @desc 將資料匯出到Excel中 * @param $data array 設定表格資料 * @param $titlename strin

php資料寫入excel

//header("Content-type: text/html; charset=utf-8"); //include_once 'PHPExcel.php'; /**      * 生成excel      * @param $list      */     p

NET使用NPOI元件資料匯出Excel-通用方法 【推薦】

一、Excel匯入及匯出問題產生:   從接觸.net到現在一直在維護一個DataTable匯出到Excel的類,時不時還會維護一個匯入類。以下是時不時就會出現的問題: 匯出問題:   如果是asp.net,你得在伺服器端裝Office,幾百M呢,還得及時更新它,以防漏洞,還得設定許可權允許ASP.n

使用PL SQL資料匯出Excel格式檔案

使用PL SQL將資料匯出為Excel格式檔案有兩種方法,第一種是先將查詢結果匯出為CSV檔案,然後再轉為Excel檔案;第二種是選中要匯出的查詢結果,右鍵,選擇複製到xls,即可。 兩種方法各有優勢: 第一種方法適用於匯出資料量特別大,如超過140多萬行資料,因為excel表格有最大行數限

Oracle 快速資料匯出到CSV(Excel)檔案的方法及效能比較

註釋:      工作中有需要將線上資料匯出到excel給客戶分析/檢視的情況,如下是方法介紹情況: 方法 1分鐘匯出的資料量 適用於 utl_file讀寫檔案包 300萬

Java資料Excel檔案形式匯出後臺程式碼實現

下面程式碼實現所需jar包:   tomcat-embed-core-8.5.11.jar;   commons-lang3-3.0.1.jar;   commons-io-2.5.jar;   poi-3.9.jar   (下載地址:https://files.cnblogs.com/files/

C# 圖片匯出Excel(包括 建立Excel 、檔案壓縮、遞迴刪除檔案及資料夾)

新增引用 using ICSharpCode.SharpZipLib.Zip;   public void CreateDirectory(string DirectoryPath) { if (!Directory.Exist

PHP資料匯出excel表的外掛與運用

外掛下載在我的這裡有我已經上傳了,自己下載,遇到問題可以在下方留言, 1、包放在 ThinkPHP -> Library -> Vendor; 2、前端:程式碼 <div class="btn-group" style="float: left; mar

PHPExcel之獲取到的資料 匯出excel

tp3.2(注意:project\ThinkPHP\Library\Org\Util\PHPExcel    引用方法: use Org\Util;       ) public function export_nj()

PHP資料匯出Excel

需要將php資料匯出Exel表格中,可以用PHPExcel,但是也有更快的方法,但是會出現些小問題 比如: /* *處理Excel匯出 *@param $datas array 設定表格資料 *@param $titlename string 設定head *@param

一個php檔案就可以把資料庫的資料匯出Excel表格

資料庫內容太多,複製貼上太麻煩?那就用程式碼實現把,把程式碼寫好了,匯出還不容易嗎,訪問即可匯出。 excel.php &lt;?php error_reporting(E_ALL ^ E_DEPRECATED); $localhost = '資料庫地址'; $dbnam

如何table表中的資料匯出excel

所用技術:Mybatis+Springmvc+Spring  例子: @RequestMapping(value = "/sbExport") public void sbcscxInquiry

mysql 資料匯出excel檔案(.xls格式)

匯出為txt檔案: select * from xi_table into outfile ’d:\test.txt’; 有時候有excel開啟的時候會出現亂碼, 因為office預設的是gb2312編碼,伺服器端生成的很有可能是utf-8編碼,這個時候你有兩種選擇: 在伺服器端使用iconv來進行編碼轉換:

java使用POI資料匯出放入Excel

本文主要是將資料庫取出的資料按照自定義的行列格式匯出到excel中,POI則是實現我們需求所用到的技術。 POI介紹 使用spring boot匯入相關依賴 獲取資料(自行處理) 完整程式碼例項:建立excel,將資料寫入excel ####1.PO

mysql命令列下資料匯出excel檔案(.xls格式)

在mysql命令列下執行以下sql語句: mysql>select * from xi_table into outfile ’/tmp/test.xls’; 一句話搞定。 linux系統儘量匯出在/tmp目錄下,不會涉及讀寫許可權問題! 匯出為txt檔案: se

java資料匯出,帶有合併單元格的excel--jxls技術

        jxls技術可以生成各種樣式的報表,非常好用,深深地喜歡上了這個。說起用這個還是比較有意思的,當時專案有個匯出表格的功能,但是沒能合併單元格,客戶不是很滿意,當時專案中大家都說弄不了,我想著自己網上查查吧,就查到了這個,試了一下午完成了,很有成就感哪,哈哈。