gpt4 book ai didi

php - 如何在 php 中修改 .doc 或 .docx 文件

转载 作者:可可西里 更新时间:2023-11-01 00:52:56 25 4
gpt4 key购买 nike

我必须在 php 中修改上传的 .doc.docx 文件。我用谷歌搜索,但我只找到了如何阅读它,但不是原样。 我想要原样的 word 文件,并将文本放在该 MS Word 文件的底部。 这怎么可能有人知道请回复。

谢谢,


我使用了以下代码:-

$w='Test';
$fp = fopen('c:/text.doc', 'a+');
fwrite($fp, $w);
fclose($fp);

它附加了字符串但没有显示在word文档中。当我将 doc 文件的扩展名更改为 xml 时,它会在末尾显示字符串。为什么它不应该显示在文档文件中。

谢谢,

最佳答案

对于 Docx 文件,您可以轻松使用 zip 阅读器,例如 TbsZip为了阅读和编辑主要的 XML 子文件(Docx 文件实际上是 zip 存档文件)。对于 DOC 文件来说,这是非常困难的,因为它是二进制文件。

这是一个使用 TbsZip 的代码示例:

<?php

$x = "Hello World!";

include_once('tbszip.php');

$zip = new clsTbsZip();

// Open the document
$zip->Open('mydoc.docx');
$content = $zip->FileRead('word/document.xml');
$p = strpos($content, '</w:body>');
if ($p===false) exit("Tag </w:body> not found in document.");

// Add the text at the end
$content = substr_replace($content, '<w:p><w:r><w:t>'.$x.'</w:t></w:r></w:p>', $p, 0);
$zip->FileReplace('word/document.xml', $content, TBSZIP_STRING);

// Save as a new file
$zip->Flush(TBSZIP_FILE, 'new.docx');

关于php - 如何在 php 中修改 .doc 或 .docx 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3297914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com