PDF у DOCX конвертація документів у PHP є поширеною потребою, коли потрібні редаговані Word‑файли з PDF‑файлів лише для читання. GroupDocs.Conversion Cloud SDK for PHP надає потужну бібліотеку, яка виконує це завдання з високою точністю. У цьому підручнику ви налаштуєте бібліотеку, пройде через докладний приклад коду та побачите, як викликати REST API за допомогою cURL для розгортання в хмарі. Після завершення ви будете готові інтегрувати конвертацію PDF у DOCX у свої власні PHP‑застосунки.

Перед початком: вимоги та встановлення

Щоб слідувати цьому посібнику, вам потрібно:

  • PHP 7.4 або вище, встановлений на вашій машині розробки або сервері.
  • Composer для управління залежностями.
  • Обліковий запис 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‑скрипт або використовувати в CI‑конвеєрах для CLI‑інструменту конвертації PDF у DOCX на PHP. Для отримання докладнішої інформації перегляньте API reference.

Висновок

Інтеграція перетворення PDF у DOCX у PHP є простою за допомогою GroupDocs.Conversion Cloud SDK for PHP. Ви дізналися, як налаштувати бібліотеку, виконати покрокове перетворення та викликати ту ж функціональність за допомогою REST‑запитів. Бібліотека підтримує як розгортання в хмарі, так і сценарії на місці, забезпечуючи гнучкість для мікросервісних архітектур або традиційних серверних інсталяцій. Не забудьте переглянути варіанти ціноутворення на сторінці продукту та отримати тимчасову ліцензію зі сторінка тимчасової ліцензії перед переходом у продакшн. Щасливого кодування!

Питання та відповіді

Як реалізувати конвертацію документів PDF у DOCX у PHP on‑premise?
Розгорніть бібліотеку на власному сервері, налаштуйте ідентифікатор клієнта та секрет, і запустіть код конвертації локально. Після автентифікації не потрібен зовнішній мережевий трафік.

Який найкращий спосіб підвищити швидкість конвертації великих PDF?
Використовуйте один екземпляр ConversionApi, збільшіть ліміт пам’яті PHP і увімкніть потокову передачу, встановивши відповідні параметри в ConvertOptions. Це зменшує накладні витрати та підвищує продуктивність конвертації PDF у DOCX у PHP.

Чи можу я використовувати бібліотеку в Docker‑контейнері для мікросервісу?
Так. Додайте крок встановлення Composer у ваш Dockerfile, скопіюйте ваш PHP‑скрипт і відкрийте кінцеву точку, яка викликає логіку конвертації. Це створює портативний мікросервіс конвертації PDF у DOCX на PHP.

Чи існує пакет Composer для цієї функціональності?
Бібліотека розповсюджується через Composer. Встановіть її за допомогою composer require groupdocs-conversion-cloud і керуйте оновленнями через ваш composer.json.

Read More