之前我們使用PHP導出Excel數據時使用的是PHPExcel庫,但是phphtml' target='_blank'>office已經官方宣布PHPExcel已經被廢棄不在維護,推薦使用phpspreadsheet,如下圖所示
我們可以通過composer安裝phpspreadsheet
composer require phpoffice/phpspreadsheet
使用phpspreadsheet導出學生信息到瀏覽器代碼示例
/** * 輸出到瀏覽器(需要設置header頭) * @param string $fileName 文件名 * @param string $fileType 文件類型function excelBrowserExport($fileName, $fileType) { //文件名稱校驗 if(!$fileName) { trigger_error( 文件名不能為空 , E_USER_ERROR); //Excel文件類型校驗 $type = [ Excel2007 , Xlsx , Excel5 , xls if(!in_array($fileType, $type)) { trigger_error( 未知文件類型 , E_USER_ERROR); if($fileType == Excel2007 || $fileType == Xlsx ) { header( Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet header( Content-Disposition: attachment;filename= .$fileName. .xlsx header( Cache-Control: max-age=0 } else { //Excel5 header( Content-Type: application/vnd.ms-excel header( Content-Disposition: attachment;filename= .$fileName. .xls header( Cache-Control: max-age=0 $data = [ [1, jack , 10], [2, mike , 12], [3, jane , 21], [4, paul , 26], [5, kitty , 25], [6, yami , 60],$title = [ id , name , age $spreadsheet = new Spreadsheet();$worksheet = $spreadsheet- getActiveSheet();//設置工作表標題名稱$worksheet- setTitle( 工作表格1 //設置單元格內容foreach ($title as $key = $value) { $worksheet- setCellValueByColumnAndRow($key+1, 1, $value);$row = 2; //從第二行開始foreach ($data as $item) { $column = 1; foreach ($item as $value) { $worksheet- setCellValueByColumnAndRow($column, $row, $value); $column++; $row++;
//$writer = IOFactory::createWriter($spreadsheet, Xlsx //$writer- save($fileName. . .$fileType);//2.輸出到瀏覽器$writer = IOFactory::createWriter($spreadsheet, Xlsx //按照指定格式生成Excel文件excelBrowserExport($fileName, Xlsx $writer- save( php://output
導出結果如圖所示:
以上就是phpspreadsheet導出數據到Excel的方法介紹(代碼示例)的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
|
新聞熱點
疑難解答