La conversion de documents Word riches en HTML prêt pour le Web est un besoin fréquent pour les applications modernes en PHP. Le GroupDocs.Conversion Cloud SDK for PHP offre une API puissante qui gère le travail lourd dans le cloud. Dans ce tutoriel, nous démontrons la conversion de DOCX vers HTML en PHP en utilisant le SDK. Vous apprendrez comment configurer la bibliothèque, exécuter un exemple de code complet et effectuer la même conversion avec des appels cURL.
Comment convertir DOCX en HTML avec PHP - Étape par étape
- Installez le SDK via Composer : Ajoutez la bibliothèque à votre projet avec la commande officielle Composer.
composer require groupdocs-conversion-cloud
- Initialiser la configuration : Créez un objet
Configurationet définissez votre SID d’application ainsi que votre clé d’application.
$config = new GroupDocs\Conversion\Cloud\Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setAppKey('YOUR_APP_KEY');
- Configurer les options de conversion HTML : Ajustez les paramètres tels que l’extraction d’images et la gestion des numéros de page.
$htmlOptions = new GroupDocs\Conversion\Cloud\Model\HtmlConvertOptions();
$htmlOptions->setExtractImages(true);
$htmlOptions->setPreserveOriginalPageNumbers(false);
$htmlOptions->setZipOutput(false);
$htmlOptions->setShowHiddenText(false);
$htmlOptions->setRenderToSinglePage(false);
- Créer les paramètres de conversion : Définissez le fichier source, le format cible et joignez les options HTML.
$convertSettings = new GroupDocs\Conversion\Cloud\Model\ConvertSettings();
$convertSettings->setFilePath('sample.docx');
$convertSettings->setOutputPath('output.html');
$convertSettings->setFormat('html');
$convertSettings->setOptions($htmlOptions);
- Exécuter la conversion : Appelez la méthode
convertDocumentet gérez le résultat.
$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;
}
Pour plus de détails sur chaque classe et méthode, consultez la référence API.
Exemple complet de code : générer du HTML à partir de DOCX en PHP
L’exemple suivant montre une conversion complète de bout en bout utilisant le 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;
}
Note : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour les chemins de fichiers (
sample.docx,output.html) pour qu’ils correspondent à vos emplacements réels, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.
Conversion de fichiers DOCX en HTML à l’aide de cURL et de l’API REST
Le SDK propose également un point de terminaison REST qui peut être appelé avec cURL. Voici le flux de travail typique.
Obtenir un jeton d’accès
RemplacezYOUR_CLIENT_IDetYOUR_CLIENT_SECRETpar vos informations d’identification.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"}'Téléverser le fichier DOCX
Utilisez le jeton de l’étape précédente.curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/storage/file/sample.docx" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -F "file=@sample.docx"Démarrer la conversion
Demander la conversion en 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 } }'Télécharger le HTML résultant
curl -X GET "https://api.groupdocs.cloud/v2.0/conversion/storage/file/output.html" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -o output.html
Pour une liste complète des paramètres, consultez la documentation officielle de l’API.
Installation et configuration de GroupDocs.Conversion Cloud SDK for PHP
composer require groupdocs-conversion-cloud
Téléchargez le dernier package depuis la page de publication. Le SDK nécessite PHP 7.4 ou une version ultérieure ainsi qu’un compte GroupDocs Cloud actif avec des informations d’identification valides.
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 Fonctionnalités pour DOCX vers HTML
- Extraction d’images -
extractImagesvous permet d’extraire les images intégrées dans des fichiers séparés, en préservant la fidélité de la mise en page. - Contrôle du numéro de page -
preserveOriginalPageNumberspeut être désactivé pour produire un flux HTML continu. - Sortie HTML simple - En définissant
zipOutputsur false, vous générez un fichier HTML unique au lieu d’une archive ZIP , simplifiant le traitement en aval. - Gestion du texte masqué -
showHiddenTextdétermine si le contenu masqué apparaît dans le HTML final. - Rendu en page unique -
renderToSinglePagepeut combiner toutes les pages en un seul document HTML pour faciliter l’intégration.
Toutes les fonctionnalités sont décrites dans la documentation.
Conclusion
La conversion de DOCX en HTML en PHP devient simple avec le GroupDocs.Conversion Cloud SDK for PHP. La bibliothèque gère le formatage complexe, l’extraction d’images et la gestion des pages sans nécessiter Microsoft Office sur le serveur. Après avoir suivi les étapes ci‑dessus, vous pouvez intégrer la conversion DOCX vers HTML dans n’importe quel flux de travail basé sur PHP, que vous préfériez les appels natifs du SDK ou les requêtes RESTful cURL. N’oubliez pas d’obtenir une licence appropriée pour une utilisation en production ; les détails de tarification sont disponibles sur la page de licence temporaire. Commencez la conversion dès aujourd’hui et fournissez un contenu riche, prêt pour le web, à vos utilisateurs.
FAQ
Comment implémenter DOCX en HTML en PHP sans installer de logiciel supplémentaire ?
Le SDK basé sur le cloud effectue tout le traitement sur les serveurs GroupDocs, vous n’avez besoin que de la bibliothèque PHP et de vos identifiants.Puis-je convertir plusieurs fichiers DOCX en une seule requête ?
L’API prend en charge la conversion par lots en parcourant les fichiers dans votre code ; chaque appel renvoie son propre résultat HTML.Que se passe-t-il avec les images à l’intérieur du fichier DOCX ?
AvecextractImagesactivé, les images sont enregistrées en tant que fichiers séparés et référencées dans le HTML généré, vous permettant de les servir directement.Existe-t-il un moyen de personnaliser la mise en page HTML générée ?
Vous pouvez post‑traiter la sortie HTML ou ajuster les options de conversion telles querenderToSinglePagepour influencer la structure.
