2010-07-30 84 views
14

我必须在php中修改上传的.doc或.docx文件。我Google搜索,但我只发现如何阅读。我希望Word文件保持原样,并在运行时将文本放在MS Word文件的底部。这怎么可能有人知道请回复或给我的例子脚本。使用php编辑.doc或.docx文件

感谢,

回答

9

您可以使用PHPWord

+0

谢谢答复。 – user343695 2010-07-30 08:45:17

+2

嗨,我已经使用PHPWORD,但它只创建.docx文件没有修改。我想编辑现有的单词文件。如果.doc中的文件那么它将以.doc扩展名的形式出现,如果文件是.docx,那么它将采用相同的格式。请回复,谢谢, – user343695 2010-07-30 08:48:02

+2

在我下载的PHPWord代码中,有一个用.docx模板替换变量(格式为$ {varname})并将其另存为新文件的示例。如果你有一个没有varname标签的文档,它可能不会回答这个问题。我认为PHPWord也不能使用.doc文件 - 可能需要COM类,或附加到任何给定的文件(http://php.net/manual/en/book.com.php) – 2011-11-08 04:08:15

0

请尝试查看http://www.tinybutstrong.com/,因为它可以创建和编辑Word文档,我们在邮件合并样式中使用它来生成doc和pdf中的发票。

+0

thnks回复。但是我在http://www.tinybbstrong.com/找不到我的要求。你能举个例子吗? 谢谢, – user343695 2010-07-30 10:10:07

17

我是PHPWord的开发人员。您可以使用PHPWord_Template类打开现有的DOCX文件,然后用您的单个文本替换一些文本标记。

或者,您可以使用ZipArchive扩展名打开DOCX文件,然后读取/写入所需的每个xml文件(document.xml,header.xml,footer.xml,...)。这个方法只不过是PHPWord_Template类。 ;)

+0

我可以在浏览器中使用PHPWord打开文档进行编辑吗? – Umair 2014-05-02 08:19:32

+0

@UmairAyub你的意思是Google Docs?没有人,PHPWord仅用于编程生成word文档。基于浏览器的文字处理器是一件大事,你不仅会找到一个为你处理所有这些问题的图书馆。 – Niall 2014-11-13 12:11:15

1

我对编辑.DOC的.docx文件同样的要求,使用PHP和我有这方面找到解决方法。 ,我已经写在上面后:: http://www.onlinecode.org/update-docx-file-using-php/

if($zip_val->open($full_path) == true) 
{ 
    // In the Open XML Wordprocessing format content is stored. 
    // In the document.xml file located in the word directory. 

    $key_file_name = 'word/document.xml'; 
    $message = $zip_val->getFromName($key_file_name);    

    $timestamp = date('d-M-Y H:i:s'); 

    // this data Replace the placeholders with actual values 
    $message = str_replace("client_full_name",  "onlinecode org",  $message); 
    $message = str_replace("client_email_address", "[email protected]", $message); 
    $message = str_replace("date_today",   $timestamp,   $message);  
    $message = str_replace("client_website",  "www.onlinecode.org", $message);  
    $message = str_replace("client_mobile_number", "+1999999999",   $message); 

    //Replace the content with the new content created above. 
    $zip_val->addFromString($key_file_name, $message); 
    $zip_val->close(); 
} 
+0

这是完美的工作 – Dave 2017-11-04 07:56:59

相关问题