PHP導出Excel文件

一、PHP導出Excel文件列寬調整

當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是一個示例代碼:


$spreadsheet = new PhpOffice\PhpSpreadsheet\Spreadsheet();
$worksheet = $spreadsheet->getActiveSheet();

// 設置A列的列寬為20
$worksheet->getColumnDimension('A')->setWidth(20);

// 導出Excel文件
$writer = new PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
$writer->save('test.xlsx');

二、PHP導出Excel文件科學計數法

在PHP導出Excel文件時,有些數值比較大,會自動轉換為科學計數法格式。如果需要保持數值原樣輸出,可以使用PHPExcel類庫中的setCellValueExplicit方法,並設置第三個參數為PHPExcel_Cell_DataType::TYPE_STRING,示例代碼如下:


$spreadsheet = new PhpOffice\PhpSpreadsheet\Spreadsheet();
$worksheet = $spreadsheet->getActiveSheet();

// 設置單元格A1的值為1000000000
// 如果不設置第三個參數,則會輸出為1.0E+09
$worksheet->setCellValueExplicit('A1', '1000000000', PhpOffice\PhpSpreadsheet\Cell\DataType::TYPE_STRING);

// 導出Excel文件
$writer = new PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
$writer->save('test.xlsx');

三、PHP導出Excel文件身份證號

當我們需要導出Excel文件中包含身份證號碼時,一般需要按照規定的格式進行輸出。可以使用PHPExcel類庫中的setFormatCode方法設置單元格的格式代碼,示例代碼如下:


$spreadsheet = new PhpOffice\PhpSpreadsheet\Spreadsheet();
$worksheet = $spreadsheet->getActiveSheet();

// 設置單元格A1的值為身份證號碼
$worksheet->setCellValue('A1', '342901199001011234');

// 設置單元格A1的格式為身份證號碼格式
$worksheet->getStyle('A1')->getNumberFormat()->setFormatCode('000000199001010000');

// 導出Excel文件
$writer = new PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
$writer->save('test.xlsx');

四、PHP導出Excel表格

使用PHPExcel類庫可以方便的導出Excel表格,示例代碼如下:


$spreadsheet = new PhpOffice\PhpSpreadsheet\Spreadsheet();
$worksheet = $spreadsheet->getActiveSheet();

// 設置表格的表頭
$worksheet->setCellValue('A1', '姓名');
$worksheet->setCellValue('B1', '年齡');
$worksheet->setCellValue('C1', '性別');

// 設置表格數據
$worksheet->setCellValue('A2', '張三');
$worksheet->setCellValue('B2', 20);
$worksheet->setCellValue('C2', '男');

$worksheet->setCellValue('A3', '李四');
$worksheet->setCellValue('B3', 22);
$worksheet->setCellValue('C3', '女');

// 導出Excel文件
$writer = new PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
$writer->save('test.xlsx');

五、Python導出Excel文件

如果需要使用Python導出Excel文件,可以使用Python的openpyxl類庫,示例代碼如下:


from openpyxl import Workbook

# 創建Excel文件
workbook = Workbook()
worksheet = workbook.active

# 設置A列的列寬為20
worksheet.column_dimensions['A'].width = 20

# 設置單元格A1的值為1000000000
worksheet['A1'] = 1000000000

# 導出Excel文件
workbook.save('test.xlsx')

六、HTML導出Excel文件

有時候需要將HTML數據導出為Excel文件,可以使用JavaScript的xlsx類庫,示例代碼如下:


// HTML數據
var html = "<table><tr><td>姓名</td><td>年齡</td><td>性別</td></tr><tr><td>張三</td><td>20</td><td>男</td></tr><tr><td>李四</td><td>22</td><td>女</td></tr></table>";

// 解析HTML數據
var parser = new DOMParser();
var htmlDoc = parser.parseFromString(html, "text/html");

// 將HTML數據轉換為Excel文件
var wb = XLSX.utils.table_to_book(htmlDoc.querySelector('table'), {sheet:"Sheet1"});

// 導出Excel文件
XLSX.writeFile(wb, 'test.xlsx');

七、Vue導出Excel文件

如果需要在Vue項目中導出Excel文件,可以使用vue-json-excel插件,示例代碼如下:


import Vue from 'vue';
import JsonExcel from 'vue-json-excel';

// 組件中使用



八、Oracle導出Excel文件

如果需要在Oracle資料庫中導出Excel文件,可以使用Oracle的UTL_FILE類庫,示例代碼如下:


DECLARE  
   v_file UTL_FILE.FILE_TYPE;  
BEGIN  
   v_file := UTL_FILE.fopen('/tmp', 'test.xlsx', 'W', 32760);  
   UTL_FILE.put_line(v_file, '姓名,年齡,性別');  
   UTL_FILE.put_line(v_file, '張三,20,男');  
   UTL_FILE.put_line(v_file, '李四,22,女');  
   UTL_FILE.fclose(v_file);  
END; 

九、PHP導出Excel單元格設置

使用PHPExcel類庫可以設置單元格的字體、邊框等屬性,示例代碼如下:


$spreadsheet = new PhpOffice\PhpSpreadsheet\Spreadsheet();
$worksheet = $spreadsheet->getActiveSheet();

// 設置單元格A1的值為"Hello, world!"
$worksheet->setCellValue('A1', 'Hello, world!');

// 設置A1單元格的字體為黑色粗體
$style = array(
    'font' => array(
        'bold' => true,
        'color' => array('rgb' => '000000')
    )
);
$worksheet->getStyle('A1')->applyFromArray($style);

// 設置A1單元格的邊框為上下左右均為細線
$style = array(
    'borders' => array(
        'allBorders' => array(
            'borderStyle' => PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN,
            'color' => array('argb' => 'FF000000'),
        ),
    ),
);
$worksheet->getStyle('A1')->applyFromArray($style);

// 導出Excel文件
$writer = new PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
$writer->save('test.xlsx');

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
WOEJU的頭像WOEJU
上一篇 2025-04-24 06:40
下一篇 2025-04-24 06:40

相關推薦

發表回復

登錄後才能評論