PDF do konwersji dokumentów DOCX w PHP jest częstym wymaganiem, gdy potrzebujesz edytowalnych plików Word z PDF‑ów tylko do odczytu. GroupDocs.Conversion Cloud SDK for PHP zapewnia solidną bibliotekę, która radzi sobie z tym zadaniem z wysoką dokładnością. W tym samouczku skonfigurujesz bibliotekę, przejdziesz przez szczegółowy przykład kodu i zobaczysz, jak wywołać REST API za pomocą cURL w środowisku chmurowym. Po zakończeniu będziesz gotowy zintegrować konwersję PDF do DOCX w swoich własnych aplikacjach PHP.

Przed rozpoczęciem: Wymagania wstępne i instalacja

Aby podążać za tym przewodnikiem, potrzebujesz:

  • PHP 7.4 lub nowszy zainstalowany na maszynie deweloperskiej lub serwerze.
  • Composer do zarządzania zależnościami.
  • Konto GroupDocs Cloud (client ID i client secret) – możesz je utworzyć w portalu GroupDocs.
  • Wystarczająca ilość miejsca na dysku dla źródłowego pliku PDF i powstałego pliku DOCX.

Zainstaluj bibliotekę przy użyciu Composer:

composer require groupdocs-conversion-cloud

Pobierz najnowszy pakiet lub zobacz źródło na GitHubie: Link do pobrania. Po instalacji jesteś gotowy, aby rozpocząć kodowanie.

Konwersja dokumentu PDF do DOCX w PHP – krok po kroku

Poniżej znajduje się zwięzły przewodnik, który pokazuje każde niezbędne działanie. Pełny kod źródłowy pojawi się później w sekcji Kompletna implementacja PHP dla konwersji dokumentów do DOCX.

Krok 1: Załaduj źródłowy PDF

Utwórz instancję ConversionApi i wskaż na PDF, który chcesz przekonwertować.

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';

Krok 2: Zainicjuj ustawienia konwersji

Zdefiniuj format wyjściowy i ścieżkę docelową. Klasa ConvertOptions pozwala precyzyjnie dostosować limity pamięci dla dużych plików PDF, co poprawia wydajność konwersji PDF do DOCX w 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

Krok 3: Wykonaj konwersję

Wyślij żądanie do usługi w chmurze. To pojedyncze wywołanie API wykonuje ciężką pracę.

use GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest;

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

Krok 4: Pobierz wynik

Przekonwertowany plik DOCX został zapisany w określonej przez Ciebie ścieżce. Teraz możesz go udostępnić użytkownikowi lub przechować do późniejszego przetwarzania.

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

Krok 5: Czyszczenie zasobów

Usuń instancję API, jeśli wykonujesz wiele konwersji w pętli. Ponowne użycie tej samej instancji jest bardziej wydajne dla mikrousługi konwersji PDF do DOCX w PHP.

unset($api);

Pełna implementacja PHP konwertująca dokumenty do DOCX

Poniższy kod łączy wszystkie kroki w jeden, gotowy do uruchomienia skrypt.

<?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);
?>

Uwaga: Ten przykład kodu demonstruje podstawową funkcjonalność. Przed użyciem go w swoim projekcie upewnij się, że zaktualizowałeś ścieżki do plików (input.pdf, output.docx itp.), aby odpowiadały rzeczywistym lokalizacjom, sprawdź, czy wszystkie wymagane zależności są poprawnie zainstalowane, oraz dokładnie przetestuj w środowisku deweloperskim. Jeśli napotkasz jakiekolwiek problemy, odwołaj się do oficjalnej dokumentacji lub skontaktuj się z forum wsparcia.

Wykonywanie konwersji dokumentów przy użyciu REST API i cURL

Jeśli wolisz bezpośrednio współpracować z usługą, poniższe polecenia cURL ilustrują pełny przepływ pracy.

1. Uwierzytelnianie i uzyskanie tokenu dostępu

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. Prześlij źródłowy plik 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. Żądanie konwersji PDF do 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. Pobierz przekonwertowany 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

Te polecenia można opakować w prosty skrypt PHP lub używać w pipeline’ach CI jako narzędzie CLI do konwersji PDF na DOCX w PHP. Aby uzyskać więcej informacji, zobacz odwołanie do API.

Podsumowanie

Integracja konwersji PDF do DOCX w PHP jest prosta dzięki GroupDocs.Conversion Cloud SDK for PHP. Nauczyłeś się, jak skonfigurować bibliotekę, przeprowadzić konwersję krok po kroku oraz wywołać tę samą funkcjonalność za pomocą wywołań REST. Biblioteka obsługuje zarówno wdrożenia w chmurze, jak i scenariusze on‑premise, zapewniając elastyczność dla architektur mikroserwisowych lub tradycyjnych instalacji serwerowych. Pamiętaj, aby zapoznać się z opcjami cenowymi na stronie produktu i uzyskać tymczasową licencję ze strony tymczasowej licencji przed przejściem do produkcji. Miłego kodowania!

FAQ

Jak zaimplementować konwersję dokumentu PDF do DOCX w PHP lokalnie (on‑premise)?
Wdroż bibliotekę na własnym serwerze, skonfiguruj identyfikator klienta i sekret, a następnie uruchom kod konwersji lokalnie. Po uwierzytelnieniu nie jest wymagany żaden zewnętrzny ruch sieciowy.

Jaki jest najlepszy sposób na zwiększenie prędkości konwersji dużych plików 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.

Czy mogę używać biblioteki w kontenerze Docker dla mikroserwisu?
Tak. Dołącz krok instalacji Composer w swoim Dockerfile, skopiuj swój skrypt PHP i udostępnij punkt końcowy, który wywołuje logikę konwersji. To tworzy przenośny mikroserwis konwersji PDF do DOCX w PHP.

Czy istnieje pakiet Composer dla tej funkcjonalności?
Biblioteka jest dystrybuowana za pośrednictwem Composer. Zainstaluj ją przy użyciu composer require groupdocs-conversion-cloud i zarządzaj aktualizacjami w pliku composer.json.

Czytaj więcej