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.docxitp.), 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.
