在 PHP 中創建 Excel 文件

電子表格已成為保存、組織和分析數據的重要組成部分。由於自動化解決方案如今在商業中越來越流行,創建和操作 Excel 文檔 (XLS/XLSX) 的趨勢已經出現並以巨大的速度增長。根據上述場景,本文介紹瞭如何在 PHP 中創建和修改 Excel 文件。

用於創建 Excel 文件的 PHP 庫 - 免費下載

為了在基於 PHP 的 Web 應用程序中創建和操作 Excel 文件,我們將使用 Aspose.Cells for PHP via Java。它是一個強大的高速庫,為 Excel 自動化提供了廣泛的功能。您可以從 此處 下載庫包。

用法

以下是通過 Java 使用 Aspose.Cells for PHP 需要滿足的先決條件。

完成先決條件後,請按照以下步驟執行 example.php 文件進行測試。

  1. 將 Java.inc 文件放在您下載的庫包的根文件夾中。
  2. 在命令提示符下使用以下命令運行 JavaBridge.jar:
    • cd aspose.細胞

    • %JAVAHOME%\bin\java -Djava.ext.dirs=lib -jar JavaBridge.jar SERVLETLOCAL:8080

  3. 使用以下命令從庫的根文件夾運行 example.php:
    • PHP 示例.php

在 PHP 中創建 Excel 文件的簡單步驟

以下是在 PHP 中創建 Excel 文件的一些簡單步驟。

以下代碼示例顯示瞭如何在 PHP 中創建 Excel XLSX 文件。

require_once("http://localhost:8080/JavaBridge/java/Java.inc");
require_once("aspose.cells.php");

use aspose\cells;

// 創建工作簿類的對象
$workbook = new cells\Workbook();

// 訪問工作表
$sheets = $workbook->getWorksheets();

// 訪問所需工作表的單元格
$cells = $sheets->get(0)->getCells();

// 向單元格插入值
$cells->get("A1")->putValue("Hello world!");

// 保存 Excel 文件
$workbook->save("output.xlsx", cells\SaveFormat::XLSX);

在 PHP 中修改 Excel 文件

在上一節中,我們從頭開始創建了一個 Excel 文件。現在,讓我們編輯現有的 Excel 文件並向其中插入數據。

以下是通過 Java 使用 Aspose.Cells for PHP 將數據寫入 XLSX 文件的步驟。

以下代碼示例顯示瞭如何在 PHP 中修改 Excel 文件。

// 創建工作簿類的對像以加載 Excel 文件
$workbook = new cells\Workbook("workbook.xlsx");

// 訪問工作表
$sheets = $workbook->getWorksheets();

// 訪問所需工作表的單元格
$cells = $sheets->get(0)->getCells();

// 向單元格插入值
$cells->get("A1")->putValue("Hello world!");

// 保存 Excel 文件
$workbook->save("updated.xlsx");

PHP:使用圖表創建 Excel 文件

以下是使用 PHP 在 Excel 文件中創建圖表的步驟。

以下代碼示例顯示瞭如何使用 PHP 在 Excel 文件中創建圖表。

// 加載 Excel 文件
$workbook = new Workbook("Book2.xlsx");

// 獲取第一個工作表的引用
$worksheets = $workbook->getWorksheets();
$sheet = $worksheets->get(0);

// 向單元格添加一些示例值
$cells = $sheet->getCells();
$cell = $cells->get("A1");
$cell->setValue(50);
$cell = $cells->get("A2");
$cell->setValue(100);
$cell = $cells->get("A3");
$cell->setValue(150);
$cell = $cells->get("B1");
$cell->setValue(4);
$cell = $cells->get("B2");
$cell->setValue(20);
$cell = $cells->get("B3");
$cell->setValue(50);

// 獲取工作表中的圖表
$charts = $sheet->getCharts();

// 向工作表添加圖表
$chartIndex = $charts->add(ChartType::PYRAMID, 5, 0, 15, 5);
$chart = $charts->get($chartIndex);

// 將NSeries(圖表數據源)添加到圖表範圍從“A1”
// 細胞到“B3”
$serieses = $chart->getNSeries();
$serieses->add("A1:B3", true);

// 寫入Excel文件 
$workbook.save("Excel_with_Chart.xlsx");

在 PHP 中的 Excel 文件中添加數據透視表

Excel 工作表中的數據透視表用於向數據添加過濾器、計算總計、匯總數據等。可以使用工作表中的單元格範圍創建數據透視表。以下是使用 PHP 在 Excel 工作表中創建數據透視表的步驟。

以下代碼示例顯示瞭如何使用 PHP 在 Excel 中創建數據透視表。

// 加載要轉換的文件
$workbook = new Workbook("Book2.xlsx");

// 獲取第一個工作表的引用
$worksheets = $workbook->getWorksheets();
$sheet = $worksheets->get(0);

// 向單元格添加一些示例值
$cells = $sheet->getCells();
$cell->setValue("Sport");
$cell = $cells->get("B1");
$cell->setValue("Quarter");
$cell = $cells->get("C1");
$cell->setValue("Sales");

$cell = $cells->get("A2");
$cell->setValue("Golf");
$cell = $cells->get("A3");
$cell->setValue("Golf");
$cell = $cells->get("A4");
$cell->setValue("Tennis");
$cell = $cells->get("A5");
$cell->setValue("Tennis");
$cell = $cells->get("A6");
$cell->setValue("Tennis");
$cell = $cells->get("A7");
$cell->setValue("Tennis");
$cell = $cells->get("A8");
$cell->setValue("Golf");

$cell = $cells->get("B2");
$cell->setValue("Qtr3");
$cell = $cells->get("B3");
$cell->setValue("Qtr4");
$cell = $cells->get("B4");
$cell->setValue("Qtr3");
$cell = $cells->get("B5");
$cell->setValue("Qtr4");
$cell = $cells->get("B6");
$cell->setValue("Qtr3");
$cell = $cells->get("B7");
$cell->setValue("Qtr4");
$cell = $cells->get("B8");
$cell->setValue("Qtr3");

$cell = $cells->get("C2");
$cell->setValue(1500);
$cell = $cells->get("C3");
$cell->setValue(2000);
$cell = $cells->get("C4");
$cell->setValue(600);
$cell = $cells->get("C5");
$cell->setValue(1500);
$cell = $cells->get("C6");
$cell->setValue(4070);
$cell = $cells->get("C7");
$cell->setValue(5000);
$cell = $cells->get("C8");
$cell->setValue(6430);

// 獲取數據透視表
$pivotTables = $sheet->getPivotTables();

// 將數據透視表添加到工作表
$index = $pivotTables->add("=A1:C8", "E3", "PivotTable2");

// 訪問新添加的數據透視表的實例
$pivotTable = $pivotTables->get($index);

// 取消顯示行的總計
$pivotTable->setRowGrand(false);

// 將第一個字段拖到行區域
$pivotTable->addFieldToArea(PivotFieldType::ROW, 0);

// 將第二個字段拖到列區域
$pivotTable->addFieldToArea(PivotFieldType::COLUMN, 1);

// 將第三個字段拖到數據區
$pivotTable->addFieldToArea(PivotFieldType::DATA, 2);

// 寫入Excel文件
$workbook.save("Excel_with_Table.xlsx");

用於創建 Excel 文件的 Aspose PHP 庫 - 獲得免費許可證

您可以使用 免費臨時許可證 在沒有評估限制的情況下免費創建 PHP 文件。

結論

在本文中,您學習瞭如何在 PHP 中從頭開始創建 Excel XLS 或 XLSX 文件。此外,您還了解瞭如何將數據寫入現有的 Excel 文件,以及如何在 PHP 中生成帶有圖表或表格的 Excel 文件。您可以使用 文檔 探索更多關於 PHP Excel 庫的信息。如果您有任何疑問,請隨時通過我們的 論壇 告訴我們。

也可以看看