php導出excel簡單方法,php按照excel模板導出

本文目錄一覽:

php怎麼把數據表中的數據導出到excel表中

php 把數據導出到excel表格有多種方法,比如使用 phpExcel 等,以下代碼是直接通過 header 生成 excel 文件的代碼示例:

PHP如何導出Excel文件

昨天項目里有個新需求,客戶希望把一些數據能導出成為Excel表格,剛開始用PHP原生輸入Excel表格,發現效果不是很理想,於是找到一個比較著名的庫:PHPExcel。下面是一個簡單的demo,分享給大家,希望可以幫到有同樣需求的朋友。

1.百度:phpexcel,結果如圖所示,點擊第一個結果;

PHP導出Excel,PHP輸入Excel

2.進入官網後,找到右邊的download按鈕,下載,下載完成的是一個壓縮文件,解壓放到你的項目目錄里,根據個人情況而定;

PHP導出Excel,PHP輸入Excel

PHP導出Excel,PHP輸入Excel

3.因為這裡給大家做演示,所以建了一個測試文件,有點基礎的都能明白是怎麼回事,下面進入代碼;

PHP導出Excel,PHP輸入Excel

4.

//引入PHPExcel庫文件(路徑根據自己情況)

include ‘./phpexcel/Classes/PHPExcel.php’;

//創建對象

$excel = new PHPExcel();

//Excel表格式,這裡簡略寫了8列

$letter = array(‘A’,’B’,’C’,’D’,’E’,’F’,’F’,’G’);

//表頭數組

$tableheader = array(‘學號’,’姓名’,’性別’,’年齡’,’班級’);

//填充表頭信息

for($i = 0;$i count($tableheader);$i++) {

$excel-getActiveSheet()-setCellValue(“$letter[$i]1″,”$tableheader[$i]”);

}

PHP導出Excel,PHP輸入Excel

5.

//表格數組

$data = array(

array(‘1′,’小王’,’男’,’20’,’100′),

array(‘2′,’小李’,’男’,’20’,’101′),

array(‘3′,’小張’,’女’,’20’,’102′),

array(‘4′,’小趙’,’女’,’20’,’103′)

);

//填充表格信息

for ($i = 2;$i = count($data) + 1;$i++) {

$j = 0;

foreach ($data[$i – 2] as $key=$value) {

$excel-getActiveSheet()-setCellValue(“$letter[$j]$i”,”$value”);

$j++;

}

}

PHP導出Excel,PHP輸入Excel

6.

//創建Excel輸入對象

$write = new PHPExcel_Writer_Excel5($excel);

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/octet-stream”);

header(“Content-Type:application/download”);;

header(‘Content-Disposition:attachment;filename=”testdata.xls”‘);

header(“Content-Transfer-Encoding:binary”);

$write-save(‘php://output’);

PHP導出Excel,PHP輸入Excel

7.打開頁面,刷新的時候會彈出對話框,讓你選擇文件保存路徑和文件名稱,我直接放在了桌面上,如圖所示;

PHP導出Excel,PHP輸入Excel

PHP導出Excel,PHP輸入Excel

8.打開表格後,數據和格式跟代碼中的一致,說明PHP導出的Excel是正確的。如果出現錯誤,檢查一下你的表格數組和數據數組吧。

PHP導出Excel,PHP輸入Excel

PHP如何將查詢出來的數據導出成excel表格(最好做一個按鈕)?

講的複雜了啊!\x0d\x0a你先在一個完整版的PHPExcel之後解壓,在「Examples」目錄下會找到一大堆例子,根據你的要求這個「01simple-download-xlsx.php」文件就可以了!\x0d\x0a註:你先保持「01simple-download-xlsx.php」文件所在的目錄位置不要變,測試好了,再改變名,移到別的地方,地方變了的話,文件里的 「require_once dirname(__FILE__) . ‘/../Classes/PHPExcel.php’;」的所在位置也要變!\x0d\x0a我們要改動代碼很少,如下:\x0d\x0a// Add some data\x0d\x0a$objPHPExcel-setActiveSheetIndex(0)\x0d\x0a-setCellValue(‘A1’, ‘Hello’)\x0d\x0a-setCellValue(‘B2’, ‘world!’)\x0d\x0a-setCellValue(‘C1’, ‘Hello’)\x0d\x0a-setCellValue(‘D2’, ‘world!’);\x0d\x0a\x0d\x0a// Miscellaneous glyphs, UTF-8\x0d\x0a$objPHPExcel-setActiveSheetIndex(0)\x0d\x0a-setCellValue(‘A4’, ‘Miscellaneous glyphs’)\x0d\x0a-setCellValue(‘A5’, ‘éàèùâêîôûëïüÿäöüç’);\x0d\x0a、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、\x0d\x0a直接用的我的替換\x0d\x0a$objPHPExcel-setActiveSheetIndex(0)//這個就是現實導出的表第一行,有幾列是根據你的那張表有幾列!\x0d\x0a-setCellValue(‘A1’, ‘單號’)\x0d\x0a-setCellValue(‘B1’, ‘標題’)\x0d\x0a-setCellValue(‘C1’, ‘內容’)\x0d\x0a-setCellValue(‘D1’, ‘序列’)\x0d\x0a-setCellValue(‘E1’, ‘數字’);\x0d\x0a//下面實現的就是建立資料庫連接,直接到表,你的連接資料庫、表、欄位應該與我的不一樣,你可以參考\x0d\x0a$conn=@mysql_connect(“localhost”,”root”,”root”) or die(“資料庫伺服器連接錯誤”.mysql_error());//連接mysql資料庫\x0d\x0amysql_select_db(“temp”,$conn) or die(“資料庫訪問錯誤”.mysql_error());//資料庫\x0d\x0amysql_query(“set character set gb2312”);\x0d\x0amysql_query(“set names gb2312”);\x0d\x0a\x0d\x0a$sqlgroups=”select * from test “;//查詢這一張表的條件\x0d\x0a$resultgroups=mysql_query($sqlgroups);\x0d\x0a$numrows=mysql_num_rows($resultgroups);\x0d\x0aif ($numrows0)\x0d\x0a{\x0d\x0a$count=1;\x0d\x0awhile($data=mysql_fetch_array($resultgroups))\x0d\x0a{\x0d\x0a$count+=1;\x0d\x0a$l1=”A”.”$count”;\x0d\x0a$l2=”B”.”$count”;\x0d\x0a$l3=”C”.”$count”;\x0d\x0a$l4=”D”.”$count”;\x0d\x0a$l5=”E”.”$count”;\x0d\x0a$objPHPExcel-setActiveSheetIndex(0) \x0d\x0a-setCellValue($l1, $data[‘id’])//這就是你要導出表的欄位、與對應的名稱\x0d\x0a-setCellValue($l2, $data[‘title’])\x0d\x0a-setCellValue($l3, $data[‘content’])\x0d\x0a-setCellValue($l4, $data[‘sn’])\x0d\x0a-setCellValue($l5, $data[‘num’]);\x0d\x0a}\x0d\x0a}

原創文章,作者:LGRM,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/150079.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
LGRM的頭像LGRM
上一篇 2024-11-07 09:49
下一篇 2024-11-07 09:49

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • 解決.net 6.0運行閃退的方法

    如果你正在使用.net 6.0開發應用程序,可能會遇到程序閃退的情況。這篇文章將從多個方面為你解決這個問題。 一、代碼問題 代碼問題是導致.net 6.0程序閃退的主要原因之一。首…

    編程 2025-04-29
  • ArcGIS更改標註位置為中心的方法

    本篇文章將從多個方面詳細闡述如何在ArcGIS中更改標註位置為中心。讓我們一步步來看。 一、禁止標註智能調整 在ArcMap中設置標註智能調整可以自動將標註位置調整到最佳顯示位置。…

    編程 2025-04-29
  • Python創建分配內存的方法

    在python中,我們常常需要創建並分配內存來存儲數據。不同的類型和數據結構可能需要不同的方法來分配內存。本文將從多個方面介紹Python創建分配內存的方法,包括列表、元組、字典、…

    編程 2025-04-29
  • Python中init方法的作用及使用方法

    Python中的init方法是一個類的構造函數,在創建對象時被調用。在本篇文章中,我們將從多個方面詳細討論init方法的作用,使用方法以及注意點。 一、定義init方法 在Pyth…

    編程 2025-04-29
  • 用不同的方法求素數

    素數是指只能被1和自身整除的正整數,如2、3、5、7、11、13等。素數在密碼學、計算機科學、數學、物理等領域都有著廣泛的應用。本文將介紹幾種常見的求素數的方法,包括暴力枚舉法、埃…

    編程 2025-04-29
  • 使用Vue實現前端AES加密並輸出為十六進位的方法

    在前端開發中,數據傳輸的安全性問題十分重要,其中一種保護數據安全的方式是加密。本文將會介紹如何使用Vue框架實現前端AES加密並將加密結果輸出為十六進位。 一、AES加密介紹 AE…

    編程 2025-04-29
  • Python中讀入csv文件數據的方法用法介紹

    csv是一種常見的數據格式,通常用於存儲小型數據集。Python作為一種廣泛流行的編程語言,內置了許多操作csv文件的庫。本文將從多個方面詳細介紹Python讀入csv文件的方法。…

    編程 2025-04-29
  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29

發表回復

登錄後才能評論