使用PHP将Word文档添加到另一个Word文档

问题描述:

如何使用PHP(fwrite)将Word文档添加到另一个Word文档?使用PHP将Word文档添加到另一个Word文档

$filename = "./1.doc"; 
$handle = fopen($filename, "r"); 
$contents = fread($handle, filesize($filename)); 

$filename2 = "./2.doc"; 
$handle2 = fopen($filename2, "r"); 
$contents2 = fread($handle2, filesize($filename2)); 

$contents3 =$contents2.$contents; 
$fp = fopen("./3.doc", 'w+'); 

fwrite($fp, $contents); 

3.doc只包含1.doc。

看起来你在最后一行代码中有一个错字:

fwrite($fp, $contents); 

应该

fwrite($fp, $contents3); 
+0

谢谢,我看出来了,但是这是不是我的问题:-(仍然只看到1.DOC的 – jsmb 2009-10-19 08:53:59

我不会理会的fopen对于前两个,刚刚的file_get_contents() ,然后FOPEN检视检视和写入这种方式

 
$file1 = (is_file("./1.doc"))?file_get_contents("./1.doc"):""; 
$file2 = (is_file("./2.doc"))?file_get_contents("./2.doc"):""; 
$file3_cont = $file1.$file2; 

if(is_file("./3.doc")){ 
    if(($fp = @fopen("./3.doc", "w+")) !== false){ 
    if(fwrite($fp, $file3_cont) !== false){ 
    echo "File 3 written."; 
    } 
    } 
} 

首先,你只能是实际fwriting()$contents变量,而不是$contents3

虽然真正的问题是Word文档的内部结构更复杂。一个Word文档包含一定数量的序言和包装。如果您只是简单地连接两个Word文档,则您将 大概 *只剩下一个垃圾文件。您需要一个可以解析Word文件的库,只提取实际的文本内容,连接文本并将其保存为新的Word文件。

*)测试只是为了好玩,这个词简直不能由两个串联的.doc文件一个文件做任何事情。

+0

好一点!从来没有想过这样的内容,我总是.txts工作,从不使用.docs – Psytronic 2009-10-19 08:49:08

+0

试过了,它只会写第一个doc文件到第三个 – Psytronic 2009-10-19 08:58:16

+0

好的,谢谢,我将不得不寻找另一种方式! – jsmb 2009-10-19 09:04:38