تبدیل اسناد HTML به فرمت Word یک نیاز مکرر هنگام تولید گزارش‌ها، فاکتورها یا محتوای پویا برای کاربران نهایی است. Aspose.HTML Cloud SDK for PHP یک کتابخانه قدرتمند است که تبدیل HTML به DOCX را در سمت سرور ساده می‌کند. این راهنما شما را در تمام جریان کار راهنمایی می‌کند، از نصب و مدیریت امن HTML تا یک مثال کد کامل، آماده برای تولید و توصیه‌های بهترین روش‌ها.

تبدیل HTML به DOCX در PHP در 5 مرحله

  1. نصب کتابخانه Aspose.HTML Cloud: از Composer برای افزودن بسته به پروژه خود استفاده کنید.
composer require aspose-html-cloud
  1. احراز هویت با اعتبارهای Aspose Cloud: یک شیء Configuration با شناسه کلاینت و رمز عبور خود ایجاد کنید، سپس یک توکن دسترسی دریافت کنید.
use Aspose\HTML\Configuration;

$config = new Configuration();
$config->setClientId('YOUR_CLIENT_ID');
$config->setClientSecret('YOUR_CLIENT_SECRET');
  1. آماده‌سازی محتوای HTML: HTML منبع را از یک فایل یا رشته بارگذاری کنید و به‌صورت اختیاری آن را برای جلوگیری از XSS پاک‌سازی کنید.
use Aspose\HTML\Conversion\ConversionApi;

$htmlPath = __DIR__ . '/sample.html';
$htmlContent = file_get_contents($htmlPath);
// Example sanitization (replace with a robust library for production)
$htmlContent = strip_tags($htmlContent, '<p><a><img><style><div>');
  1. تبدیل به DOCX: نقطه انتهایی تبدیل را با فرمت خروجی مورد نظر فراخوانی کنید. روش اصلی convertDocument است.
$apiInstance = new ConversionApi($config);
$convertRequest = new \Aspose\HTML\Model\ConvertDocumentRequest(
    $htmlContent,
    'HTML',
    'DOCX'
);
$docxResult = $apiInstance->convertDocument($convertRequest);
file_put_contents('output.docx', $docxResult);
  1. دریافت و پاک‌سازی: تبدیل یک جریان باینری برمی‌گرداند که می‌توانید به‌عنوان فایل DOCX ذخیره کنید. اطمینان حاصل کنید که خطاها را مدیریت کرده و هر منبعی را آزاد کنید.
if ($docxResult) {
    echo "Conversion successful. DOCX saved as output.docx";
} else {
    echo "Conversion failed.";
}

مراحل بالا تبدیل ساده تبدیل HTML به DOCX در PHP را نشان می‌دهند، در حالی که همچنین مکان‌هایی را که می‌توان بررسی‌های امنیتی و بهینه‌سازی‌های عملکردی را اضافه کرد، نشان می‌دهند.

تبدیل HTML به DOCX در PHP با استفاده از Aspose.HTML - مثال کامل کد

مثال زیر تمام قطعات را در یک اسکریپت قابل اجرا ترکیب می‌کند.

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

use Aspose\HTML\Configuration;
use Aspose\HTML\Conversion\ConversionApi;
use Aspose\HTML\Model\ConvertDocumentRequest;

// 1. Configure client credentials
$config = new Configuration();
$config->setClientId('YOUR_CLIENT_ID');
$config->setClientSecret('YOUR_CLIENT_SECRET');

// 2. Load and optionally sanitize HTML
$htmlPath = __DIR__ . '/sample.html';
$htmlContent = file_get_contents($htmlPath);
$htmlContent = strip_tags($htmlContent, '<p><a><img><style><div>');

// 3. Initialize the conversion API
$apiInstance = new ConversionApi($config);

// 4. Create conversion request (HTML -> DOCX)
$convertRequest = new ConvertDocumentRequest(
    $htmlContent,   // source HTML string
    'HTML',         // source format
    'DOCX'          // target format
);

// 5. Execute conversion
try {
    $docxStream = $apiInstance->convertDocument($convertRequest);
    file_put_contents('output.docx', $docxStream);
    echo "HTML successfully converted to DOCX. File saved as output.docx";
} catch (Exception $e) {
    echo 'Conversion error: ', $e->getMessage();
}

توجه: این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید مسیرهای فایل (sample.html، output.docx) به‌روز شده‌اند، تأیید کنید که تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند و به‌طور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک با تیم پشتیبانی تماس بگیرید.

تولید اسناد Word از HTML از طریق REST API با استفاده از cURL

شما همچنین می‌توانید تبدیل را بدون نوشتن کد PHP با فراخوانی مستقیم نقاط انتهایی Aspose.HTML Cloud REST انجام دهید.

  1. دریافت توکن دسترسی

    curl -X POST "https://api.aspose.cloud/connect/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. بارگذاری فایل HTML منبع

    curl -X PUT "https://api.aspose.cloud/v4.0/html/storage/file/sample.html" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -T sample.html
    
  3. درخواست تبدیل به DOCX

    curl -X POST "https://api.aspose.cloud/v4.0/html/convert?format=docx" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{"inputPath":"sample.html","outputPath":"output.docx"}'
    
  4. بارگیری فایل DOCX حاصل

    curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/output.docx" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -o output.docx
    

این دستورات cURL جریان کامل تبدیل را از احراز هویت تا بازیابی فایل نشان می‌دهند. برای جزئیات بیشتر، به مستندات رسمی API مراجعه کنید.

Aspose.HTML Cloud SDK for PHP - پیش‌نیازها و راه‌اندازی

قبل از شروع کدنویسی، اطمینان حاصل کنید که محیط شما الزامات زیر را برآورده می‌کند:

  • PHP 7.4 یا بالاتر
  • Composer به‌صورت سراسری نصب شده
  • یک حساب فعال Aspose Cloud با اعتبارهای معتبر مشتری

کتابخانه را نصب کنید و آخرین بسته را دانلود کنید:

composer require aspose-html-cloud

همچنین می‌توانید در صورت تمایل، منبع را از GitHub کلون کنید:

git clone https://github.com/aspose-html-cloud/aspose-html-cloud-php.git

پس از نصب، شناسه مشتری و رمز عبور خود را همان‌طور که در بخش مراحل نشان داده شده است، پیکربندی کنید. برای دریافت فهرست کامل گزینه‌های پیکربندی، به مستندات مراجعه کنید.

Aspose.HTML Cloud SDK for PHP قابلیت‌های تولید DOCX با کیفیت بالا

  • رندر دقیق CSS - کتابخانه CSS خارجی و درون‌خطی را تجزیه می‌کند و چیدمان، قلم‌ها و رنگ‌ها را در DOCX تولید شده حفظ می‌نماید.
  • پشتیبانی از قلم‌های جاسازی‌شده - از قواعد @font-face برای جاسازی قلم‌های سفارشی استفاده کنید تا اطمینان حاصل شود سند Word در تمام پلتفرم‌ها یک‌سان ظاهر می‌شود.
  • مدیریت ورودی ایمن - هوک‌های پاک‌سازی داخلی به شما امکان می‌دهند تگ‌ها و ویژگی‌های ناامن را حذف کنید و خطرات XSS را در حین تبدیل کاهش دهید.
  • کنترل‌های عملکرد - گزینه‌هایی مانند maxImageResolution و disableExternalResources به شما اجازه می‌دهند سرعت را نسبت به دقت به‌دقت تنظیم کنید.
  • پردازش دسته‌ای - API مجموعه‌ای از فایل‌های HTML را می‌پذیرد و امکان خطوط تبدیل با توان پردازشی بالا را فراهم می‌کند.

این ویژگی‌ها کتابخانه را برای تولید اسناد سمت سرور که هر دو کیفیت و امنیت در آن اهمیت دارند، ایده‌آل می‌کند.

نتیجه‌گیری

تبدیل HTML به DOCX در PHP اکنون به‌دلیل قابلیت‌های قدرتمند Aspose.HTML Cloud SDK for PHP به‌صورت یک فرآیند ساده‌سازی شده است. با دنبال کردن مراحل، اعمال بهترین شیوه‌های امنیتی و بهره‌گیری از گزینه‌های عملکرد کتابخانه، می‌توانید به‌طور قابل اعتماد اسناد Word تولید کنید که ظاهر اصلی HTML را حفظ می‌کنند. به‌خاطر داشته باشید که برای استفاده در محیط تولید، باید یک لایسنس مناسب تهیه کنید؛ جزئیات قیمت‌گذاری در صفحه محصول موجود است و می‌توانید برای تست یک لایسنس موقت از صفحه لایسنس موقت دریافت کنید. با این دانش، آماده‌اید تا تبدیل HTML به DOCX با کیفیت بالا را در برنامه‌های PHP خود یکپارچه کنید.

سوالات متداول

  • ساده‌ترین راه برای شروع تبدیل HTML به DOCX در PHP چیست؟
    از فراخوانی تک‌خطی convertDocument از کتابخانه Aspose.HTML Cloud پس از نصب آن از طریق Composer استفاده کنید. مثال موجود در این راهنما کد حداقل مورد نیاز را نشان می‌دهد.

  • چگونه می‌توانم برنامه‌ام را در برابر HTML مخرب هنگام تبدیل محافظت کنم؟
    ورودی را با کتابخانه‌ای مانند HTMLPurifier پاکسازی کنید یا از هوک‌های پاکسازی داخلی ارائه‌شده توسط کتابخانه قبل از ارسال محتوا به API تبدیل استفاده کنید.

  • آیا کتابخانه از تبدیل HTML که شامل تصاویر خارجی است پشتیبانی می‌کند؟
    بله. به طور پیش‌فرض، منابع خارجی دریافت و جاسازی می‌شوند. می‌توانید این رفتار را با گزینه disableExternalResources غیرفعال کنید اگر ترجیح می‌دهید اندازه DOCX کوچکتر باشد.

  • کجا می‌توانم گزینه‌های پیشرفته‌تری برای پیکربندی خروجی DOCX پیدا کنم؟
    تمام تنظیمات تبدیل در مستندات رسمی مستند شده‌اند، از جمله گزینه‌های اندازه صفحه، حاشیه‌ها و جاسازی فونت.

بیشتر بخوانید