การแปลงเอกสารจาก PDF ไปเป็น DOCX ใน PHP เป็นความต้องการที่พบบ่อยเมื่อคุณต้องการไฟล์ Word ที่สามารถแก้ไขได้จาก PDF ที่อ่านได้อย่างเดียว. GroupDocs.Conversion Cloud SDK for PHP ให้ไลบรารีที่แข็งแกร่งซึ่งจัดการงานนี้ด้วยความแม่นยำสูง. ในบทแนะนำนี้คุณจะตั้งค่าไลบรารี, เดินผ่านตัวอย่างโค้ดอย่างละเอียด, และดูวิธีเรียกใช้ REST API ด้วย cURL สำหรับการปรับใช้บนคลาวด์. เมื่อจบคุณจะพร้อมผสานการแปลง PDF เป็น DOCX เข้ากับแอปพลิเคชัน PHP ของคุณเอง.

ก่อนที่คุณจะเริ่ม: ข้อกำหนดเบื้องต้นและการติดตั้ง

เพื่อทำตามคู่มือนี้คุณต้องการ:

  • PHP 7.4 หรือสูงกว่า ติดตั้งบนเครื่องพัฒนา หรือเซิร์ฟเวอร์ของคุณ
  • Composer สำหรับการจัดการ dependency
  • บัญชี GroupDocs Cloud (client ID และ client secret) – คุณสามารถสร้างได้บนพอร์ทัลของ GroupDocs
  • พื้นที่ดิสก์เพียงพอสำหรับไฟล์ PDF ต้นฉบับและไฟล์ DOCX ที่ได้ผลลัพธ์

ติดตั้งไลบรารีด้วย Composer:

composer require groupdocs-conversion-cloud

ดาวน์โหลดแพ็กเกจล่าสุดหรือดูซอร์สโค้ดบน GitHub: URL ดาวน์โหลด. หลังจากการติดตั้ง คุณพร้อมที่จะเริ่มเขียนโค้ดแล้ว.

การแปลงเอกสาร PDF เป็น DOCX ใน PHP - สร้างขั้นตอนต่อขั้นตอน

ด้านล่างเป็นการสาธิตสั้น ๆ ที่แสดงแต่ละการดำเนินการที่สำคัญ โค้ดต้นฉบับเต็มจะปรากฏต่อไปในส่วน การดำเนินการ PHP เต็มรูปแบบสำหรับการแปลงเอกสารเป็น DOCX.

ขั้นตอนที่ 1: โหลดไฟล์ PDF ต้นฉบับ

สร้างอินสแตนซ์ของ ConversionApi และชี้ไปที่ไฟล์ PDF ที่คุณต้องการแปลง.

use GroupDocs\Conversion\Configuration;
use GroupDocs\Conversion\Api\ConversionApi;

$config = new Configuration('YOUR_CLIENT_ID', 'YOUR_CLIENT_SECRET');
$api = new ConversionApi($config);
$sourcePath = 'input.pdf';

ขั้นตอนที่ 2: เริ่มต้นการตั้งค่าการแปลง

กำหนดรูปแบบผลลัพธ์และเส้นทางปลายทาง. คลาส ConvertOptions ช่วยให้คุณปรับแต่งขีดจำกัดหน่วยความจำสำหรับ PDF ขนาดใหญ่ได้อย่างละเอียด ซึ่งช่วยปรับปรุง ประสิทธิภาพการแปลง PDF เป็น DOCX ใน PHP.

use GroupDocs\Conversion\Model\ConvertOptions;

$options = new ConvertOptions();
$options->setFilePath($sourcePath);
$options->setOutputPath('output.docx');
$options->setFormat('docx');
// Optional: $options->setMemoryLimit(1024); // in MB

ขั้นตอน 3: ดำเนินการแปลง

ส่งคำขอไปยังบริการคลาวด์. การเรียก API ครั้งเดียวนี้ทำหน้าที่หลักทั้งหมด.

use GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest;

$request = new ConvertDocumentRequest($options);
$api->convertDocument($request);

ขั้นตอนที่ 4: ดึงผลลัพธ์

ไฟล์ DOCX ที่แปลงแล้วถูกบันทึกลงในเส้นทางที่คุณระบุ คุณสามารถให้บริการไฟล์นี้แก่ผู้ใช้หรือเก็บไว้สำหรับการประมวลผลในภายหลังได้

echo "Conversion completed. DOCX saved to output.docx";

ขั้นตอนที่ 5: ทำความสะอาดทรัพยากร

ทำลายอินสแตนซ์ของ API หากคุณกำลังทำการแปลงหลายครั้งในลูป การใช้ซ้ำอินสแตนซ์เดียวกันจะมีประสิทธิภาพมากกว่า สำหรับ บริการไมโครเซอร์วิสการแปลง PDF เป็น DOCX ใน PHP.

unset($api);

การดำเนินการ PHP ครบถ้วนสำหรับการแปลงเอกสารเป็น DOCX

โค้ดต่อไปนี้รวมขั้นตอนทั้งหมดไว้ในสคริปต์เดียวที่สามารถรันได้

<?php
require 'vendor/autoload.php';

use GroupDocs\Conversion\Configuration;
use GroupDocs\Conversion\Api\ConversionApi;
use GroupDocs\Conversion\Model\ConvertOptions;
use GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest;

// ==== Configuration ====
$clientId = 'YOUR_CLIENT_ID';
$clientSecret = 'YOUR_CLIENT_SECRET';
$config = new Configuration($clientId, $clientSecret);
$api = new ConversionApi($config);

// ==== Input / Output ====
$sourcePath = __DIR__ . '/input.pdf';
$outputPath = __DIR__ . '/output.docx';

// ==== Conversion Options ====
$options = new ConvertOptions();
$options->setFilePath($sourcePath);
$options->setOutputPath($outputPath);
$options->setFormat('docx');
// Example of performance tuning
$options->setMemoryLimit(1024); // 1 GB

// ==== Convert ====
$request = new ConvertDocumentRequest($options);
try {
    $api->convertDocument($request);
    echo "PDF successfully converted to DOCX. File saved at: $outputPath\n";
} catch (Exception $e) {
    echo "Conversion failed: " . $e->getMessage() . "\n";
}

// ==== Cleanup ====
unset($api);
?>

หมายเหตุ: ตัวอย่างโค้ดนี้แสดงการทำงานหลักของฟังก์ชัน ก่อนนำไปใช้ในโปรเจกต์ของคุณ ให้ตรวจสอบและอัปเดตเส้นทางไฟล์ (input.pdf, output.docx, เป็นต้น) ให้ตรงกับตำแหน่งไฟล์จริงของคุณ ตรวจสอบว่าขึ้นตอนการพึ่งพาที่จำเป็นทั้งหมดได้ถูกติดตั้งอย่างถูกต้อง และทดสอบอย่างละเอียดในสภาพแวดล้อมการพัฒนา หากพบปัญหาใด ๆ โปรดดูที่ เอกสารอย่างเป็นทางการ หรือเข้าร่วมที่ ฟอรั่มสนับสนุน เพื่อขอความช่วยเหลือ

การดำเนินการแปลงเอกสารผ่าน REST API ด้วย cURL

หากคุณต้องการโต้ตอบกับบริการโดยตรง คำสั่ง cURL ด้านล่างนี้จะแสดงกระบวนการทำงานทั้งหมด

1. รับรองความถูกต้องและรับโทเค็นการเข้าถึง

curl -X POST "https://api.groupdocs.cloud/v2.0/oauth2/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"

2. อัปโหลด PDF ต้นฉบับ

curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file/upload?path=/input.pdf" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@/path/to/input.pdf"

3. ขอแปลง PDF เป็น DOCX

curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert?outputFormat=docx&outputPath=/output.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"filePath":"/input.pdf"}'

4. ดาวน์โหลด DOCX ที่แปลงแล้ว

curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/download?path=/output.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.docx

คำสั่งเหล่านี้สามารถนำไปใส่ในสคริปต์ PHP อย่างง่ายหรือใช้ใน pipeline ของ CI สำหรับ เครื่องมือ CLI แปลง PDF เป็น DOCX ใน PHP. สำหรับรายละเอียดเพิ่มเติม ดูที่ API reference.

สรุป

การรวมการแปลง PDF เป็น DOCX ใน PHP นั้นง่ายดายด้วย GroupDocs.Conversion Cloud SDK for PHP. คุณได้เรียนรู้วิธีตั้งค่าห้องสมุด, ทำการแปลงแบบขั้นตอน‑ต่อ‑ขั้นตอน, และเรียกใช้ฟังก์ชันเดียวกันผ่านการเรียก REST. ห้องสมุดนี้รองรับการปรับใช้ทั้งบนคลาวด์และในสถานที่, ให้ความยืดหยุ่นสำหรับสถาปัตยกรรมไมโครเซอร์วิสหรือการติดตั้งเซิร์ฟเวอร์แบบดั้งเดิม. อย่าลืมตรวจสอบตัวเลือกการกำหนดราคาในหน้าผลิตภัณฑ์และรับใบอนุญาตชั่วคราวจาก หน้าใบอนุญาตชั่วคราว ก่อนย้ายไปสู่การผลิต. ขอให้สนุกกับการเขียนโค้ด!

FAQs

ฉันจะทำการแปลงเอกสาร PDF เป็น DOCX ใน PHP บน‑premise ได้อย่างไร?
ปรับใช้ไลบรารีบนเซิร์ฟเวอร์ของคุณเอง กำหนดค่า client ID และ secret แล้วรันโค้ดการแปลงในเครื่องท้องถิ่น ไม่จำเป็นต้องมีการรับส่งข้อมูลเครือข่ายภายนอกหลังจากการตรวจสอบสิทธิ์

วิธีที่ดีที่สุดในการปรับปรุงความเร็วการแปลงสำหรับ PDF ขนาดใหญ่คืออะไร?
Reuse a single ConversionApi instance, increase PHP’s memory limit, and enable streaming by setting appropriate options in ConvertOptions. This reduces overhead and boosts PDF to DOCX Conversion Performance in PHP.

ฉันสามารถใช้ไลบรารีในคอนเทนเนอร์ Docker สำหรับไมโครเซอร์วิสได้หรือไม่?
ใช่. รวมขั้นตอนการติดตั้ง Composer ใน Dockerfile ของคุณ, คัดลอกสคริปต์ PHP ของคุณ, และเปิดเผย endpoint ที่เรียกใช้ตรรกะการแปลง. สิ่งนี้จะสร้าง PDF to DOCX conversion microservice in PHP ที่พกพาได้.

มีแพ็คเกจ Composer สำหรับฟังก์ชันนี้หรือไม่?
ไลบรารีนี้จัดจำหน่ายผ่าน Composer. ติดตั้งด้วย composer require groupdocs-conversion-cloud และจัดการการอัปเดตผ่าน composer.json ของคุณ

อ่านเพิ่มเติม