การแปลงสเปรดชีต ODS ไปเป็น XLSX เป็นความต้องการที่พบบ่อยเมื่อผสานเอกสารสำนักงานเข้ากับแอปพลิเคชันเว็บ โดยเฉพาะอย่างยิ่งเมื่อระบบ downstream ยอมรับเฉพาะรูปแบบ Microsoft Excel เท่านั้น GroupDocs.Conversion Cloud SDK for PHP ให้ API ฝั่งเซิร์ฟเวอร์ที่เชื่อถือได้ซึ่งจัดการการแปลงนี้ด้วยความแม่นยำสูง ในคู่มือนี้คุณจะได้เรียนรู้วิธีตั้งค่า SDK, รันการแปลงอย่างสมบูรณ์, วัดประสิทธิภาพ, และใช้แนวปฏิบัติที่ดีที่สุดสำหรับการประมวลผลที่เร็วและใช้หน่วยความจำอย่างมีประสิทธิภาพ.
ขั้นตอนการแปลง ODS เป็น XLSX ใน PHP
- ติดตั้ง SDK ผ่าน Composer - รัน
composer require groupdocs-conversion-cloudเพื่อเพิ่มไลบรารีลงในโปรเจกต์ของคุณ. - กำหนดค่า API credentials - สร้างอ็อบเจ็กต์
Configurationด้วย client ID และ secret ของคุณ, จากนั้นสร้างอินสแตนซ์ของConversionApi. ดู API reference สำหรับรายละเอียดคลาส. - อัปโหลดไฟล์ต้นฉบับ ODS - ใช้ endpoint
UploadFileเพื่อเก็บไฟล์ในที่เก็บข้อมูลคลาวด์ของ GroupDocs. - สร้างการตั้งค่าแปลง - ตั้งค่า
outputFormatเป็นXLSXและปรับพารามิเตอร์เสริมอื่น ๆ เช่นpreserveFormatting. - ดำเนินการแปลง - เรียก
convertDocumentพร้อมกับ ID ของไฟล์ที่อัปโหลดและอ็อบเจ็กต์การตั้งค่า. - ดาวน์โหลดผลลัพธ์ XLSX - ดึงไฟล์ที่แปลงแล้วโดยใช้ endpoint
DownloadFileและบันทึกลงในเครื่องของคุณ.
ขั้นตอนเหล่านี้แสดงให้เห็นการทำงานหลักของ การแปลง ODS เป็น XLSX ใน PHP ในขณะที่คงการใช้หน่วยความจำให้น้อยและเวลาการทำงานสั้น
ตัวอย่าง PHP ODS เป็น XLSX - ตัวอย่างโค้ดเต็ม
ตัวอย่างต่อไปนี้แสดงการแปลงแบบครบวงจรจากต้นจนจบโดยใช้ GroupDocs.Conversion Cloud SDK for PHP.
<?php
require 'vendor/autoload.php';
use GroupDocsConversionCloud\Configuration; use GroupDocsConversionCloud\Api\ConversionApi; use GroupDocsConversionCloud\Models\ConvertSettings; use GroupDocsConversionCloud\Models\StorageFile;
// ---------------------------------------------------------------------
// 1. Configure API credentials (replace with your own values)
// ---------------------------------------------------------------------
$config = new Configuration();
$config->setAppSid('YOUR_CLIENT_ID');
$config->setAppKey('YOUR_CLIENT_SECRET');
// ——————————————————————— // 2. เริ่มต้น Conversion API // ——————————————————————— $conversionApi = new ConversionApi($config);
// ——————————————————————— // 3. อัปโหลดไฟล์ ODS ไปยังที่เก็บข้อมูลคลาวด์ของ GroupDocs // ——————————————————————— $uploadResponse = $conversionApi->uploadFile( new StorageFile([‘path’ => ‘sample.ods’, ‘file’ => fopen(‘sample.ods’, ‘rb’)]) ); $sourcePath = $uploadResponse->getPath();
// ---------------------------------------------------------------------
// 4. ตั้งค่าตัวเลือกการแปลง (รูปแบบเอาต์พุต XLSX)
// ---------------------------------------------------------------------
$convertSettings = new ConvertSettings();
$convertSettings->setOutputFormat('XLSX');
$convertSettings->setFilePath($sourcePath);
// ——————————————————————— // 5. ทำการแปลง // ——————————————————————— $convertResponse = $conversionApi->convertDocument($convertSettings); $downloadUrl = $convertResponse->getUrl();
// ——————————————————————— // 6. ดาวน์โหลดไฟล์ XLSX ที่แปลงแล้ว // ——————————————————————— $targetFile = fopen(‘output.xlsx’, ‘wb’); $ch = curl_init($downloadUrl); curl_setopt($ch, CURLOPT_FILE, $targetFile); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_exec($ch); curl_close($ch); fclose($targetFile);
echo “Conversion completed. File saved as output.xlsx\n”;
หมายเหตุ: ตัวอย่างโค้ดนี้แสดงการทำงานหลัก ก่อนนำไปใช้ในโครงการของคุณ โปรดตรวจสอบให้แน่ใจว่าได้อัปเดตเส้นทางไฟล์ (
sample.ods,output.xlsx) ให้ตรงกับตำแหน่งไฟล์จริงของคุณ ตรวจสอบว่าขึ้นตอนการพึ่งพาที่จำเป็นทั้งหมดได้ถูกติดตั้งอย่างถูกต้อง และทำการทดสอบอย่างละเอียดในสภาพแวดล้อมการพัฒนาของคุณ หากคุณพบปัญหาใด ๆ โปรดอ้างอิงที่ เอกสารอย่างเป็นทางการ หรือ ติดต่อทีม สนับสนุน เพื่อขอความช่วยเหลือ.
การแปลงสเปรดชีตบนคลาวด์ผ่าน REST API ด้วย cURL
คุณยังสามารถทำการแปลงเดียวกันโดยไม่ต้องเขียนโค้ด PHP โดยเรียกใช้ REST endpoint โดยตรง.
รับโทเค็นการเข้าถึง
curl -X POST "https://api.groupdocs.cloud/v2.0/oauth2/token" \ -H "Content-Type: application/json" \ -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'อัปโหลดไฟล์ ODS
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file/upload?path=sample.ods" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@sample.ods"
เริ่มการแปลง
curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"inputPath":"sample.ods","outputFormat":"XLSX"}'ดาวน์โหลดผลลัพธ์ XLSX
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/download?path=sample.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.xlsx
สำหรับรายการเต็มของ endpoint และพารามิเตอร์, ดูที่ เอกสาร API อย่างเป็นทางการ
การติดตั้งและตั้งค่าใน PHP
- ติดตั้งแพคเกจ
composer require groupdocs-conversion-cloud - ดาวน์โหลด SDK - รุ่นล่าสุดพร้อมให้ดาวน์โหลดที่ หน้าดาวน์โหลด.
- กำหนดค่า credentials - สร้างอ็อบเจ็กต์
Configurationด้วยclient_idและclient_secretของคุณ. - ตั้งค่าการบันทึก (ไม่บังคับ) - SDK สามารถบันทึกล็อกคำขอไปยังไฟล์; เปิดใช้งานในการกำหนดค่าหากคุณต้องการล็อกการแปลงที่ละเอียด.
- ใช้ไลเซนส์ - สำหรับการใช้งานในโปรดักชัน, ซื้อไลเซนส์และนำไปใช้ตามที่อธิบายใน หน้าไลเซนส์.
ตัวอย่างการแปลง ODS เป็น XLSX ใน PHP ด้วย GroupDocs.Conversion
GroupDocs.Conversion Cloud จัดการงานหนักในการแยกวิเคราะห์ไฟล์ ODS, ทำแผนที่สไตล์ของ cell และสร้างเวิร์กบุ๊ก XLSX ที่เป็นไปตามมาตรฐาน สถาปัตยกรรมบนคลาวด์ช่วยขจัดความจำเป็นในการติดตั้ง Office บนเครื่องและรับประกันผลลัพธ์ที่สม่ำเสมอข้ามแพลตฟอร์ม ตัวอย่างนี้แสดงให้เห็นว่าการเรียก API เพียงครั้งเดียวสามารถแทนที่กระบวนการทำงานบนเดสก์ท็อปหลายขั้นตอนได้อย่างไร
GroupDocs.Conversion Features That Matter For This Task
- Full ODS support - ข้อมูลเซลล์ทั้งหมด สูตร และการจัดรูปแบบจะถูกเก็บรักษาไว้
- High conversion speed - การประมวลผลบนเซิร์ฟเวอร์ที่ปรับแต่งแล้วให้ผลลัพธ์ระดับ sub‑second สำหรับไฟล์ทั่วไป
- Low memory footprint - บริการสตรีมข้อมูล ทำให้การใช้หน่วยความจำอยู่ต่ำกว่า 50 MB แม้กับสเปรดชีตขนาดใหญ่
- Conversion logging - บันทึกการแปลงอย่างละเอียดพร้อมใช้งานผ่านอ็อบเจกต์ response และการบันทึกบนเซิร์ฟเวอร์แบบเลือก
- Extensive documentation - มีเอกสารอ้างอิงและตัวอย่างโค้ดใน official documentation
กำหนดค่าตัวเลือกการแปลงสำหรับ ODS ไปเป็น XLSX
คุณสามารถปรับจูนการแปลงได้โดยการปรับโมเดล ConvertSettings model:
$convertSettings = new ConvertSettings();
$convertSettings->setOutputFormat('XLSX');
$convertSettings->setPreserveCellFormatting(true);
$convertSettings->setPassword('optionalPassword'); // if the source ODS is protected
ตัวเลือกเหล่านี้ทำให้คุณควบคุมได้ว่าจะเก็บการจัดรูปแบบเดิม, ฝังรหัสผ่าน หรือจำกัดการแปลงให้เฉพาะแผ่นงานที่ต้องการหรือไม่.
การเพิ่มประสิทธิภาพการแปลง ODS เป็น XLSX ด้านความเร็วและการใช้หน่วยความจำ
ด้านล่างเป็นการทดสอบเบนช์มาร์คที่ดำเนินการบนอินสแตนซ์ t3.medium ของ AWS แบบทั่วไป
| ขนาดไฟล์ | เวลาแปลง | หน่วยความจำสูงสุด |
|---|---|---|
| 0.5 MB | 0.42 s | 32 MB |
| 1 MB | 0.68 s | 38 MB |
| 5 MB | 1.95 s | 45 MB |
| 10 MB | 3.80 s | 52 MB |
เคล็ดลับเพื่อประสิทธิภาพที่ดียิ่งขึ้น
- บีบอัดไฟล์ ODS ต้นฉบับก่อนอัปโหลดเพื่อลดความหน่วงของเครือข่าย.
- ใช้ instance ของ
ConversionApiเดียวกันสำหรับหลายไฟล์เพื่อหลีกเลี่ยงภาระการตรวจสอบสิทธิ์ซ้ำ. - ปิดการทำงานของฟีเจอร์ที่ไม่จำเป็น เช่น การดึงภาพ เมื่อไม่ได้ต้องการ.
แนวทางปฏิบัติที่ดีที่สุดสำหรับการแปลง ODS เป็น XLSX อย่างน่าเชื่อถือใน PHP
- ตรวจสอบไฟล์อินพุต - ตรวจสอบให้แน่ใจว่าไฟล์ ODS มีรูปแบบที่ถูกต้องก่อนส่งไปยัง API.
- จัดการข้อผิดพลาดอย่างราบรื่น - ตรวจสอบการตอบกลับของ API สำหรับรหัสข้อผิดพลาดและบันทึก
requestIdเพื่อการแก้ไขปัญหา. - ใช้การสตรีมสำหรับไฟล์ขนาดใหญ่ - อัปโหลดและดาวน์โหลดไฟล์เป็นสตรีมเพื่อรักษาการใช้หน่วยความจำให้ต่ำ.
- ทดสอบกับกรณีขอบ - ตรวจสอบสูตร, เซลล์ที่รวมกัน, และสไตล์ที่กำหนดเองเพื่อหลีกเลี่ยงการสูญเสียข้อมูล.
- ตรวจสอบบันทึกการแปลง - เปิดใช้งานการบันทึกด้านเซิร์ฟเวอร์เพื่อจับเมตริกประสิทธิภาพและคำเตือนการแปลงใด ๆ.
สรุป
การแปลง ODS เป็น XLSX ใน PHP ทำได้อย่างง่ายดายด้วย GroupDocs.Conversion Cloud SDK for PHP. SDK ให้การประมวลผลที่เร็วและใช้หน่วยความจำอย่างมีประสิทธิภาพ, การบันทึกข้อมูลอย่างครอบคลุม, และเอกสารรายละเอียดที่ช่วยให้คุณสร้างกระบวนการทำงานสเปรดชีตที่แข็งแรง. จำไว้ว่าให้รับใบอนุญาตที่เหมาะสมสำหรับการใช้งานในสภาพแวดล้อมการผลิต; รายละเอียดราคาอยู่ในหน้าผลิตภัณฑ์, และสามารถขอใบอนุญาตชั่วคราวได้จาก หน้าลิขสิทธิ์ชั่วคราว. เริ่มต้นผสานรวมการแปลงวันนี้และทำให้สายงานเอกสารของคุณเป็นระเบียบมากขึ้น.
คำถามที่พบบ่อย
ความเร็วการแปลง ODS เป็น XLSX ปกติใน PHP เป็นเท่าใด?
สำหรับไฟล์ที่มีขนาดสูงสุด 5 MB การแปลงมักจะเสร็จสิ้นภายในไม่เกิน 2 วินาที ตามที่แสดงในตารางเปรียบเทียบ ไฟล์ขนาดใหญ่จะเพิ่มขึ้นอย่างเชิงเส้น แต่บริการคลาวด์ยังคงใช้หน่วยความจำน้อยฉันจะบันทึกรายละเอียดการแปลงเพื่อการตรวจสอบได้อย่างไร?
SDK จะส่งคืนrequestIdและ timestamps ในอ็อบเจ็กต์การตอบกลับ คุณยังสามารถเปิดใช้งานการบันทึกด้านเซิร์ฟเวอร์ในการตั้งค่าบัญชีของคุณเพื่อบันทึก payload ของคำขอและการตอบกลับทั้งหมดฉันจะหาเอกสารอ้างอิง API สำหรับการตั้งค่าการแปลงได้จากที่ไหน?
โมเดลทั้งหมด รวมถึงConvertSettingsได้รับการบันทึกไว้ใน อ้างอิง API อย่างเป็นทางการ. เอกสารอ้างอิงนี้ให้ตัวอย่างสำหรับแต่ละตัวเลือกที่สามารถกำหนดค่าได้.มีวิธีทดสอบ SDK โดยไม่ต้องซื้อไลเซนส์หรือไม่?
ใช่, คุณสามารถขอรับไลเซนส์ชั่วคราวได้จาก หน้าไลเซนส์ชั่วคราว. สิ่งนี้จะช่วยให้คุณประเมินคุณสมบัติการแปลงก่อนตัดสินใจใช้แผนที่ต้องชำระเงิน.
