PHPSpreadsheet
ไลบรารี PHP โอเพ่นซอร์สสำหรับไฟล์สเปรดชีต
อ่าน เขียน จัดการ และประมวลผลไฟล์ Microsoft Excel & LibreOffice Calc
เริ่มต้นใช้งาน PHPSpreadsheet
ก่อนอื่นคุณต้องมี PHP เวอร์ชัน 7.1 หรือใหม่กว่าเพื่อพัฒนาโดยใช้ PhpSpreadsheet วิธีที่แนะนำในการติดตั้ง PhpSpreadsheet ในโครงการของคุณคือการใช้ ผู้แต่ง เปิดเทอร์มินัลในไดเร็กทอรีรากของโปรเจ็กต์และรันคำสั่ง:
นี่คือคำสั่ง
composer require phpoffice/phpspreadsheet
Composer เสนอตัวติดตั้งที่สะดวกซึ่งคุณสามารถดำเนินการได้โดยตรงจากบรรทัดคำสั่ง คุณสามารถดาวน์โหลดไฟล์นี้หรือตรวจสอบได้ใน GitHub การติดตั้งมีสองวิธี นักแต่งเพลง. ติดตั้งในเครื่องโดยเป็นส่วนหนึ่งของโครงการของคุณ หรือทั่วโลกในฐานะไฟล์เรียกทำงานทั้งระบบ
ทำงานกับเซลล์สเปรดชีต
PHPSpreadsheet ช่วยให้คุณเข้าถึงเซลล์และตั้งค่าตามพิกัด คุณยังสามารถสร้างเซลล์ใหม่และตั้งค่าสูตรในเซลล์ได้อีกด้วย คุณยังสามารถกำหนดค่าเซลล์ให้ครอบครองข้อมูลประเภทต่างๆ เช่น วันที่ เวลา และตัวเลขที่มีศูนย์นำหน้าได้ PHPSpreadsheet ยังให้คุณกำหนดช่วงของเซลล์จากอาร์เรย์ รวมถึงการวนซ้ำผ่านเซลล์โดยใช้ตัววนซ้ำหรือดัชนี คุณยังสามารถใช้ตัวผูกค่าเพื่อให้ป้อนข้อมูลที่เป็นมิตรกับผู้ใช้ได้
สร้าง XLSX ใหม่ - PHP
<?php
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
// Create a new Spreasheet
$spreadsheet = new Spreadsheet();
// Get active sheet
$sheet = $spreadsheet->getActiveSheet();
// Set cell value
$sheet->setCellValue('A1', 'File Format Developer Guide !');
// Save in Xlsx format
$writer = new Xlsx($spreadsheet);
$writer->save('FileFormat.xlsx');
สร้างและใช้ตัวกรองอัตโนมัติ
เมื่อใช้ PHPSpreadsheet คุณสามารถใช้ช่วงการกรองอัตโนมัติเพื่อกรองและแสดงเฉพาะแถวที่ตรงกับเกณฑ์ที่คุณกำหนดไว้ในตัวกรองอัตโนมัติ คุณสามารถใช้ตัวกรองกับคอลัมน์มากกว่าหนึ่งคอลัมน์เป็นสารเติมแต่งได้
PHPSpreadsheet ให้คุณตั้งค่าพื้นที่กรองอัตโนมัติบนเวิร์กชีต คุณสามารถสร้าง อ่าน และเขียนนิพจน์ตัวกรองอัตโนมัติได้ นอกจากนี้ยังมีตัวกรองประเภทต่างๆ เช่น ตัวกรองธรรมดา ช่องว่างที่ตรงกัน ตัวกรอง DateGroup ตัวกรองที่กำหนดเอง ตัวกรองแบบไดนามิก และตัวกรองสิบอันดับแรก
ใช้ตัวกรองอัตโนมัติใน XLSX - PHP
<?php
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
// Load existing file without filters
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load('withoutFilter.xlsx');
// Select active worksheet
$spreadsheet->setActiveSheetIndex(0);
$spreadsheet->getActiveSheet()->setAutoFilter($spreadsheet->getActiveSheet()->calculateWorksheetDimension());
// Set active filters
$autoFilter = $spreadsheet->getActiveSheet()->getAutoFilter();
// Filter the Country column on a filter value of Germany
$autoFilter->getColumn('C')
->setFilterType(Column::AUTOFILTER_FILTERTYPE_FILTER)
->createRule()
->setRule(
Rule::AUTOFILTER_COLUMN_RULE_EQUAL,
'Germany'
);
// Save file
$writer = new Xlsx($spreadsheet);
$writer->save('Filter.xlsx');
เครื่องคำนวณสูตร
ในการคำนวณระดับพื้นฐานถึงขั้นสูงในสเปรดชีตธุรกิจของคุณ คุณสามารถเรียกใช้เครื่องมือคำนวณสูตรของ PHPSpreadsheet ได้อย่างง่ายดาย และส่วนที่เหลือจะจัดการเอง
ตัวแยกวิเคราะห์สูตรของ PHPSpreadsheet สามารถปรับสูตรได้โดยอัตโนมัติในขณะที่กำลังแทรก/ลบแถว/คอลัมน์ สูตร Microsoft Excel จะถูกแปลงเป็นโค้ด PHP ก่อนดำเนินการ เพื่อเพิ่มประสิทธิภาพ แคชการคำนวณใช้เพื่อเก็บผลลัพธ์ของสูตร ในทำนองเดียวกัน แต่ละเวิร์กชีตจะได้รับการดูแลโดยแคชที่แยกจากกัน