在 PHP 中,使用 PhpSpreadsheet 庫可以輕松地處理公式。PhpSpreadsheet 是一個用于處理電子表格的庫,它支持多種電子表格格式,如 XLSX、CSV 和 ODS。要處理公式,您需要執行以下步驟:
安裝 PhpSpreadsheet:
通過 Composer 安裝 PhpSpreadsheet:
composer require phpoffice/phpspreadsheet
引入必要的類:
在您的 PHP 文件中,引入所需的類:
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
創建一個新的電子表格:
創建一個新的 Spreadsheet 對象并添加一個工作表:
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
添加公式:
使用 setCellValueExplicit()
方法設置單元格的值和類型。對于公式,您需要將類型設置為 PhpOffice\PhpSpreadsheet\Cell\DataType::TYPE_FORMULA
。例如,將 A1 單元格的值設置為 SUM(B1:C1)
:
$sheet->setCellValueExplicit('A1', 'SUM(B1:C1)', PhpOffice\PhpSpreadsheet\Cell\DataType::TYPE_FORMULA);
或者,您可以使用 setCellFormula()
方法直接設置公式:
$sheet->setCellFormula('A1', 'SUM(B1:C1)');
讀取公式:
要讀取單元格中的公式,您可以使用 getCellValue()
方法。這將返回公式的計算結果,而不是公式本身:
$value = $sheet->getCellValue('A1');
echo $value; // 輸出 7,因為 B1=2, C1=3,SUM(B1:C1)=5
處理多個公式:
您可以在一個工作表中添加多個公式。只需確保為每個公式使用 setCellValueExplicit()
或 setCellFormula()
方法即可。
導出電子表格:
最后,您可以將電子表格導出為 XLSX 文件:
$writer = new Xlsx($spreadsheet);
$writer->save('example.xlsx');
這就是在 PHP 中使用 PhpSpreadsheet 處理公式的方法。您可以根據需要修改這些示例以滿足您的具體需求。