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

วิธีแปลง DOCX เป็น HTML ใน PHP - ขั้นตอนโดยละเอียด

  1. ติดตั้ง SDK ผ่าน Composer: เพิ่มไลบรารีไปยังโปรเจกต์ของคุณด้วยคำสั่ง Composer อย่างเป็นทางการ.
composer require groupdocs-conversion-cloud
  1. เริ่มต้นการกำหนดค่า: สร้างอ็อบเจ็กต์ Configuration และตั้งค่า App SID และ App Key ของคุณ.
$config = new GroupDocs\Conversion\Cloud\Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setAppKey('YOUR_APP_KEY');
  1. กำหนดค่าตัวเลือกการแปลงเป็น HTML: ปรับการตั้งค่าต่าง ๆ เช่น การดึงรูปภาพและการจัดการหมายเลขหน้า.
$htmlOptions = new GroupDocs\Conversion\Cloud\Model\HtmlConvertOptions();
$htmlOptions->setExtractImages(true);
$htmlOptions->setPreserveOriginalPageNumbers(false);
$htmlOptions->setZipOutput(false);
$htmlOptions->setShowHiddenText(false);
$htmlOptions->setRenderToSinglePage(false);
  1. สร้างการตั้งค่าแปลง: กำหนดไฟล์ต้นทาง, รูปแบบเป้าหมาย, และแนบตัวเลือก HTML.
$convertSettings = new GroupDocs\Conversion\Cloud\Model\ConvertSettings();
$convertSettings->setFilePath('sample.docx');
$convertSettings->setOutputPath('output.html');
$convertSettings->setFormat('html');
$convertSettings->setOptions($htmlOptions);
  1. ดำเนินการแปลง: เรียกเมธอด convertDocument และจัดการผลลัพธ์.
$convertApi = new GroupDocs\Conversion\Cloud\Api\ConvertApi($config);
try {
    $result = $convertApi->convertDocument($convertSettings);
    echo "Conversion succeeded. HTML file saved to: " . $result->getPath() . PHP_EOL;
} catch (Exception $e) {
    echo "Conversion failed: " . $e->getMessage() . PHP_EOL;
}

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับแต่ละคลาสและเมธอด โปรดดูที่ อ้างอิง API.

ตัวอย่างโค้ดเต็ม: สร้าง HTML จาก DOCX ด้วย PHP

ตัวอย่างต่อไปนี้แสดงการแปลงแบบ end‑to‑end อย่างครบวงจรโดยใช้ SDK

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

use GroupDocs\Conversion\Cloud\Configuration;
use GroupDocs\Conversion\Cloud\Api\ConvertApi;
use GroupDocs\Conversion\Cloud\Model\ConvertSettings;
use GroupDocs\Conversion\Cloud\Model\HtmlConvertOptions;

$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setAppKey('YOUR_APP_KEY');

$convertApi = new ConvertApi($config);

$inputFilePath  = 'sample.docx';
$outputFilePath = 'output.html';

$htmlOptions = new HtmlConvertOptions();
$htmlOptions->setExtractImages(true);               // extract images to separate files
$htmlOptions->setPreserveOriginalPageNumbers(false);
$htmlOptions->setZipOutput(false);                  // generate plain HTML, not a zip archive
$htmlOptions->setShowHiddenText(false);
$htmlOptions->setRenderToSinglePage(false);

$convertSettings = new ConvertSettings();
$convertSettings->setFilePath($inputFilePath);
$convertSettings->setOutputPath($outputFilePath);
$convertSettings->setFormat('html');
$convertSettings->setOptions($htmlOptions);

try {
    $result = $convertApi->convertDocument($convertSettings);
    echo "Conversion succeeded. HTML file saved to: " . $result->getPath() . PHP_EOL;
} catch (Exception $e) {
    echo "Conversion failed: " . $e->getMessage() . PHP_EOL;
}

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

แปลงไฟล์ DOCX เป็น HTML ด้วย cURL และ REST API

SDK ยังมี REST endpoint ที่สามารถเรียกใช้ด้วย cURL ได้ ด้านล่างเป็นขั้นตอนการทำงานทั่วไป.

  1. รับ Access Token
    แทนที่ YOUR_CLIENT_ID และ YOUR_CLIENT_SECRET ด้วยข้อมูลประจำตัวของคุณ.

    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"}'
    
  2. อัปโหลดไฟล์ DOCX
    ใช้โทเคนจากขั้นตอนก่อนหน้า.

curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/storage/file/sample.docx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -F "file=@sample.docx"
  1. เริ่มการแปลง
    ขอแปลงเป็น HTML.

    curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
               "filePath": "sample.docx",
               "outputPath": "output.html",
               "format": "html",
               "options": {
                   "extractImages": true,
                   "zipOutput": false
               }
             }'
    
  2. ดาวน์โหลด HTML ที่ได้ผลลัพธ์

    curl -X GET "https://api.groupdocs.cloud/v2.0/conversion/storage/file/output.html" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -o output.html
    

สำหรับรายการพารามิเตอร์ทั้งหมด โปรดดูที่ เอกสาร API อย่างเป็นทางการ.

การติดตั้งและกำหนดค่า GroupDocs.Conversion Cloud SDK สำหรับ PHP

composer require groupdocs-conversion-cloud

ดาวน์โหลดแพ็กเกจล่าสุดจาก หน้ารีลีส. SDK ต้องการ PHP 7.4 หรือใหม่กว่าและบัญชี GroupDocs Cloud ที่ใช้งานได้พร้อมข้อมูลประจำตัวที่ถูกต้อง.

require __DIR__ . '/vendor/autoload.php';

use GroupDocs\Conversion\Cloud\Configuration;

$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');   // obtain from your GroupDocs Cloud dashboard
$config->setAppKey('YOUR_APP_KEY');

GroupDocs.Conversion Cloud SDK for PHP ความสามารถสำหรับ DOCX ไปยัง HTML

  • การแยกรูปภาพ - extractImages ทำให้คุณดึงรูปภาพที่ฝังอยู่ออกเป็นไฟล์แยกต่างหากโดยคงความแม่นยำของการจัดวาง.
  • การควบคุมหมายเลขหน้า - preserveOriginalPageNumbers สามารถปิดการใช้งานเพื่อสร้างการไหลของ HTML อย่างต่อเนื่อง.
  • ผลลัพธ์ HTML ธรรมดา - การตั้งค่า zipOutput เป็น false จะสร้างไฟล์ HTML เดียวแทนการเป็นไฟล์ ZIP ซึ่งทำให้การประมวลผลต่อไปง่ายขึ้น.
  • การจัดการข้อความที่ซ่อนอยู่ - showHiddenText กำหนดว่าข้อความที่ซ่อนอยู่จะแสดงใน HTML สุดท้ายหรือไม่.
  • การเรนเดอร์หน้าเดียว - renderToSinglePage สามารถรวมทุกหน้าลงในเอกสาร HTML หน้าเดียวเพื่อการฝังที่ง่ายขึ้น.

คุณลักษณะทั้งหมดอธิบายไว้ใน เอกสาร.

Conclusion

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

คำถามที่พบบ่อย

  • ฉันจะทำการแปลง DOCX เป็น HTML ใน PHP อย่างไรโดยไม่ต้องติดตั้งซอฟต์แวร์เพิ่มเติม?
    SDK บนคลาวด์ทำการประมวลผลทั้งหมดบนเซิร์ฟเวอร์ของ GroupDocs ดังนั้นคุณต้องการเพียงไลบรารี PHP และข้อมูลประจำตัวของคุณเท่านั้น

  • ฉันสามารถแปลงไฟล์ DOCX หลายไฟล์ในคำขอเดียวได้หรือไม่?
    API รองรับการแปลงเป็นชุดโดยการวนลูปไฟล์ในโค้ดของคุณ; แต่ละการเรียกจะคืนผลลัพธ์ HTML ของตนเอง.

  • เกิดอะไรขึ้นกับรูปภาพภายในไฟล์ DOCX?
    เมื่อเปิดใช้งาน extractImages รูปภาพจะถูกบันทึกเป็นไฟล์แยกและอ้างอิงใน HTML ที่สร้างขึ้น ทำให้คุณสามารถให้บริการรูปภาพเหล่านั้นโดยตรงได้.

  • มีวิธีใดบ้างที่จะปรับแต่งเค้าโครง HTML ที่สร้างขึ้น?
    คุณสามารถทำการประมวลผลต่อผลลัพธ์ HTML หรือปรับตัวเลือกการแปลงเช่น renderToSinglePage เพื่อมีผลต่อโครงสร้าง.

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