Dalam kehidupan moden, penukaran dan pemprosesan data telah menjadi masalah yang mesti dihadapi oleh semua industri. Apabila pelbagai bentuk data muncul di hadapan kita, format data yang tidak serasi sering berlaku. Dalam pembangunan web, dokumen Word adalah format biasa, dan anda juga akan menghadapi keperluan untuk menukarnya kepada format HTML semasa pemprosesan. Sebagai salah satu bahasa pengaturcaraan yang digunakan secara meluas dalam bidang pembangunan web, PHP secara semula jadi boleh menyelesaikan masalah ini. Di bawah, artikel ini akan memperkenalkan cara menggunakan PHP untuk menukar dokumen Word ke dalam fail format HTML.
1. Gunakan PHPWord untuk menukar Word kepada HTML
PHPWord ialah perpustakaan kelas PHP sumber terbuka untuk memproses dokumen Word Ia membolehkan kami menggunakan kod PHP untuk mencipta dan mengedit dokumen Word, dan menukar Tukarkannya kepada format HTML, PDF dan lain-lain.
Gunakan Komposer untuk memasang, arahannya adalah seperti berikut:
composer require phpoffice/phpword
Untuk menukar Word kepada HTML, cuma muatkan Word ke dalam contoh PHPWord dan kemudian gunakan kaedah saveHTML()
pada tika PHPWord untuk menukarnya kepada format HTML. Contoh kod:
require_once __DIR__ . '/vendor/autoload.php'; use PhpOffice\PhpWord\IOFactory; // Load the Word document $phpWord = IOFactory::load('example.docx'); // Save the HTML file $htmlWriter = IOFactory::createWriter($phpWord, 'HTML'); $htmlWriter->save('example.html');
Jika anda perlu menukar HTML kepada Word, anda juga boleh menggunakan PHPWord. Contoh kod:
require_once __DIR__ . '/vendor/autoload.php'; use PhpOffice\PhpWord\IOFactory; // Load the HTML file $phpWord = IOFactory::load('example.html', 'HTML'); // Save the Word document $phpWordWriter = IOFactory::createWriter($phpWord, 'Word2007'); $phpWordWriter->save('example.docx');
2. Gunakan PHP untuk menukar Word kepada HTML
Selain menggunakan PHPWord, kami juga boleh menggunakan kelas ZipArchive PHP untuk memproses dokumen Word dan menukarnya kepada HTML .
Pertama, anda perlu menyahmampat dokumen Word ke dalam fail XML dan fail sumber lain Di sini, gunakan kelas ZipArchive untuk penyahmampatan. Contoh kod:
$wordFile = 'example.docx'; $zip = new ZipArchive; if ($zip->open($wordFile) === true) { $tmpdir = '/tmp/myproject/' . uniqid(); mkdir($tmpdir); $i = 0; while (($entry = $zip->getNameIndex($i++)) !== false) { $entryFilename = $tmpdir . '/' . $entry; if (substr($entry, -1) == '/') { mkdir($entryFilename); } else { file_put_contents($entryFilename, $zip->getFromIndex($i - 1)); } } $zip->close(); }
Selepas mendapatkan dokumen Word yang dinyahmampat, anda perlu menghuraikan fail XML dan menjana kod HTML .
Contoh kod:
$xmlFile = $tmpdir . '/word/document.xml'; if (file_exists($xmlFile)) { $xml = simplexml_load_file($xmlFile); echo '<html><body>'; foreach ($xml->body->p as $paragraph) { echo '<p>'; foreach ($paragraph->r as $text) { if (isset($text->b)) { echo '<b>' . htmlspecialchars((string)$text->t) . '</b>'; } else { echo htmlspecialchars((string)$text->t); } } echo '</p>'; } echo '</body></html>'; }
3. Ringkasan
Di atas ialah kaedah pelaksanaan menggunakan PHP untuk menukar dokumen Word ke dalam format HTML. Ia agak mudah untuk menggunakan perpustakaan PHPWord untuk mengendalikan dokumen Word, manakala menggunakan kelas ZipArchive akan menjadi sedikit lebih menyusahkan, tetapi ia juga boleh melaksanakan fungsi menukar Word kepada format HTML dengan lebih baik. Dengan pelbagai kaedah, kita boleh memilih kaedah yang paling sesuai untuk kita menyiapkan tugasan.
Atas ialah kandungan terperinci Bagaimana untuk menukar perkataan kepada fail format html dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!