首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 讀取 Excel 檔案並修改內容示例(PHPExcel 實作)

     編輯:PHP 相關知識

前言

本文提供 PHPExcel 讀取 Excel 模板、修改指定儲存格、導出下載的精簡實作代碼,適用於快速建立報表匯出功能。完整架構說明請參考「PHP 使用 PHPExcel 讀取、修改 Excel 並導出下載完整範例」。

核心程式碼

<?php
$dir = $_SERVER['DOCUMENT_ROOT'] . '/backoffice/admin/oemcheck/';
$templateName = '1.xlsx';
$outputFileName = '模板.xlsx';
$txt = 'test';

$reader = new PHPExcel_Reader_Excel2007();
if (!$reader->canRead($dir . $templateName)) {
    $reader = new PHPExcel_Reader_Excel5();
    if (!$reader->canRead($dir . $templateName)) {
        die('無法識別的 Excel 檔案!');
    }
}

$phpExcel = $reader->load($dir . $templateName);
$sheet = $phpExcel->getSheet(0);
$sheet->setCellValue('B13', iconv('GBK', 'UTF-8', $txt));

$writer = new PHPExcel_Writer_Excel2007($phpExcel);
ob_start();
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment; filename="' . $outputFileName . '"');
header('Cache-Control: max-age=0');
$writer->save('php://output');

關鍵點提醒

  • 雙重讀取器偵測(.xlsx → .xls)確保相容性。
  • 寫入前以 iconv('GBK', 'UTF-8') 處理中文編碼。
  • Header 必須精確設定 application/vnd.openxmlformats-officedocument.spreadsheetml.sheet。
  • 輸出至 php://output 避免產生臨時檔案。

遷移提示

PHPExcel 已停止維護,新專案請直接使用 PhpSpreadsheet(composer require phpoffice/phpspreadsheet),API 高度相容,效能與記憶體管理更優。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved