สร้างไฟล์ Excel ใน PHP

สเปรดชีตได้กลายเป็นส่วนสำคัญในการเก็บรักษา จัดระเบียบ และวิเคราะห์ข้อมูล เนื่องจากทุกวันนี้โซลูชันอัตโนมัติมีบทบาทในธุรกิจมากขึ้น แนวโน้มของการสร้างและจัดการเอกสาร Excel (XLS/XLSX) จึงเกิดขึ้นและเติบโตอย่างรวดเร็ว บทความนี้ครอบคลุมวิธีการสร้างและแก้ไขไฟล์ Excel ใน PHP ตามสถานการณ์ที่กล่าวถึงข้างต้น

ไลบรารี PHP เพื่อสร้างไฟล์ Excel - ดาวน์โหลดฟรี

ในการสร้างและจัดการไฟล์ Excel ในเว็บแอปพลิเคชันที่ใช้ PHP เราจะใช้ Aspose.Cells for PHP ผ่าน Java เป็นไลบรารีที่ทรงพลังและความเร็วสูงที่มีฟีเจอร์มากมายสำหรับการทำงานอัตโนมัติของ Excel คุณสามารถดาวน์โหลดแพ็คเกจห้องสมุดได้จาก ที่นี่

การใช้งาน

ต่อไปนี้เป็นข้อกำหนดเบื้องต้นที่คุณต้องปฏิบัติตามเพื่อใช้ Aspose.Cells for PHP ผ่าน Java

เมื่อคุณทำข้อกำหนดเบื้องต้นเสร็จแล้ว ให้ทำตามขั้นตอนด้านล่างเพื่อเรียกใช้ไฟล์ example.php สำหรับการทดสอบ

  1. วางไฟล์ Java.inc ในโฟลเดอร์รูทของแพ็คเกจของไลบรารีที่คุณดาวน์โหลด
  2. เรียกใช้ JavaBridge.jar โดยใช้คำสั่งด้านล่างในพรอมต์คำสั่ง:
    • ซีดี aspose.cells

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

  3. เรียกใช้ example.php จากโฟลเดอร์รูทของไลบรารีโดยใช้คำสั่งด้านล่าง:
    • php example.php

ขั้นตอนง่ายๆ ในการสร้างไฟล์ Excel ด้วย PHP

ต่อไปนี้เป็นขั้นตอนง่ายๆ ในการสร้างไฟล์ Excel ใน PHP

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างไฟล์ Excel XLSX ใน PHP

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);

แก้ไขไฟล์ Excel ใน PHP

ในส่วนก่อนหน้านี้ เราสร้างไฟล์ Excel ตั้งแต่เริ่มต้น ตอนนี้มาแก้ไขไฟล์ Excel ที่มีอยู่และใส่ข้อมูลลงไป

ต่อไปนี้เป็นขั้นตอนในการเขียนข้อมูลลงในไฟล์ XLSX โดยใช้ Aspose.Cells for PHP ผ่าน Java

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแก้ไขไฟล์ Excel ใน PHP

// สร้างวัตถุของคลาสสมุดงานเพื่อโหลดไฟล์ 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 ด้วยแผนภูมิ

ต่อไปนี้เป็นขั้นตอนในการสร้างแผนภูมิในไฟล์ Excel โดยใช้ PHP

  • สร้างไฟล์ Excel ใหม่หรือโหลดไฟล์ที่มีอยู่โดยใช้คลาส Workbook
  • เพิ่มข้อมูลลงในแผ่นงานหากมีการสร้างสมุดงานใหม่
  • รับคอลเลกชันแผนภูมิของแผ่นงานโดยใช้เมธอด $worksheet->getCharts()
  • เพิ่มแผนภูมิใหม่โดยใช้เมธอด $worksheet->getCharts()->add()
  • รับ แผนภูมิ ที่สร้างขึ้นใหม่จากคอลเลกชัน
  • ระบุช่วงของเซลล์เพื่อตั้งค่า NSeries สำหรับแผนภูมิ
  • บันทึกสมุดงานเป็นไฟล์ Excel .xlsx โดยใช้วิธี $workbook->save(“output.xlsx”, cells\SaveFormat::XLSX)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการสร้างแผนภูมิในไฟล์ Excel ใน PHP

// โหลดไฟล์ 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");

เพิ่ม Pivot Table ในไฟล์ Excel ใน PHP

ตาราง Pivot ในเวิร์กชีต Excel ใช้สำหรับเพิ่มตัวกรองให้กับข้อมูล คำนวณผลรวม สรุปข้อมูล ฯลฯ ตาราง Pivot สามารถสร้างได้โดยใช้ช่วงของเซลล์ในเวิร์กชีต ต่อไปนี้เป็นขั้นตอนในการสร้างตารางเดือยในแผ่นงาน Excel โดยใช้ PHP

  • สร้างไฟล์ Excel ใหม่หรือโหลดไฟล์ที่มีอยู่โดยใช้คลาส Workbook
  • ใส่ข้อมูลลงในแผ่นงาน
  • เข้าถึงคอลเลกชันตารางเดือยโดยใช้เมธอด $worksheet->getPivotTables()
  • เพิ่มตารางเดือยใหม่ในแผ่นงานโดยใช้เมธอด $worksheet->getPivotTables()->add()
  • ให้ข้อมูลกับตารางเดือย
  • บันทึกสมุดงานโดยใช้เมธอด $workbook->save(“output.xlsx”, cells\SaveFormat::XLSX)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างตารางเดือยใน Excel โดยใช้ PHP

// โหลดเอกสารที่จะแปลง
$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();

// เพิ่ม PivotTable ลงในแผ่นงาน
$index = $pivotTables->add("=A1:C8", "E3", "PivotTable2");

// เข้าถึงอินสแตนซ์ของ PivotTable ที่เพิ่มเข้ามาใหม่
$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");

Aspose’ PHP Library เพื่อสร้างไฟล์ Excel - รับใบอนุญาตฟรี

คุณสามารถสร้างไฟล์ Excel ใน PHP ได้ฟรีโดยไม่มีข้อจำกัดในการประเมินโดยใช้ ใบอนุญาตชั่วคราวฟรี

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีสร้างไฟล์ Excel XLS หรือ XLSX ตั้งแต่เริ่มต้นใน PHP นอกจากนี้ คุณได้เห็นวิธีการเขียนข้อมูลไปยังไฟล์ Excel ที่มีอยู่ และสร้างไฟล์ Excel ด้วยแผนภูมิหรือตารางใน PHP คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับไลบรารี PHP Excel โดยใช้ เอกสารประกอบ ในกรณีที่คุณมีคำถามใดๆ โปรดแจ้งให้เราทราบผ่านทาง ฟอรัม ของเรา

ดูสิ่งนี้ด้วย