Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Membaca Fail DOCX dalam PHP tanpa Aksara Luaran?

Bagaimana untuk Membaca Fail DOCX dalam PHP tanpa Aksara Luaran?

Susan Sarandon
Susan Sarandonasal
2024-10-25 18:06:03799semak imbas

How to Read DOCX Files in PHP without Extraneous Characters?

Cara Membaca Fail DOC dalam PHP

Apabila cuba membaca fail DOC atau DOCX dalam PHP, anda mungkin menghadapi masalah dengan aksara luar di penghujung teks anda. Ralat ini berlaku kerana coretan kod yang disediakan tidak dapat menghuraikan format DOC dengan betul.

Untuk menyelesaikan isu ini, kami perlu mengubah suai sedikit pendekatan kami kerana PHP tidak menyokong penghuraian fail DOC asli. Sebaliknya, kami akan menggunakan kaedah yang berbeza untuk mengendalikan fail DOCX.

Kod Kemas Kini untuk Membaca Fail DOCX:

<code class="php">function read_file_docx($filename) {
    $striped_content = '';
    $content = '';

    if (!$filename || !file_exists($filename)) return false;

    $zip = zip_open($filename);

    if (!$zip || is_numeric($zip)) return false;

    while ($zip_entry = zip_read($zip)) {

        if (zip_entry_open($zip, $zip_entry) == FALSE) continue;

        if (zip_entry_name($zip_entry) != "word/document.xml") continue;

        $content .= zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));

        zip_entry_close($zip_entry);
    }// end while

    zip_close($zip);

    $content = str_replace('</w:r></w:p></w:tc><w:tc>', " ", $content);
    $content = str_replace('</w:r></w:p>', "\r\n", $content);
    $striped_content = strip_tags($content);

    return $striped_content;
}

$filename = "filepath";// or /var/www/html/file.docx

$content = read_file_docx($filename);
if($content !== false) {

    echo nl2br($content);
}
else {
    echo 'Couldn\'t the file. Please check that file.';
}</code>

Kod yang dikemas kini ini menggunakan kelas ZipArchive PHP untuk buka dan baca kandungan fail DOCX. Secara khusus, ia mengekstrak fail "word/document.xml" daripada arkib ZIP, yang mengandungi kandungan teks sebenar.

Dengan menggunakan kaedah ini, anda boleh berjaya membaca dan menghuraikan fail DOCX dalam PHP.

Atas ialah kandungan terperinci Bagaimana untuk Membaca Fail DOCX dalam PHP tanpa Aksara Luaran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn