background image

解析掌握

PHP 导出 Word 文档原理

  

PHP 语言可以被我们用来实现很多功能。比如在网站建设中,我们经常会用到网页导

出数据的情况。今天就为大家介绍有关

PHP 导出 Word 文档的原理。

  一般,有

2 种方法可以导出 doc 文档,一种是使用 com,并且作为 php 的一个扩展

库安装到服务器上,然后创建一个

com,调用它的方法。安装过 office 的服务器可以调用

一个叫

word.application 的 com,可以生成 word 文档,不过这种方式我不推荐,因为

执行效率比较低

(我测试了一下,在执行代码的时候,服务器会真的去打开一个 word 客户

)。理想的 com 应该是没有界面的,在后台进行数据转换,这样效果会比较好,但是这些

扩展一般需要收费。

  第

2 种方法,就是用 PHP 导出 Word 文档内容直接写入一个后缀为 doc 的文件中即

可。使用这种方法不需要依赖第三方扩展,而且执行效率较高。

  

word 本身的功能还是很强大的,它可以打开 html 格式的文件,并且能够保留格式,

即使后缀为

doc,它也能识别正常打开。这就为我们提供了方便。但是有一个问题,html 格

式的文件中的图片只有一个地址,真正的图片是保存在其他地方的,也就是说,如果将

HTML 格式写入 doc 中,那么 doc 中将不能包含图片。那我们如何创建包含图片的 doc 文

档呢?我们可以使用和

html 很接近的 mht 格式。

  

mht 格式和 html 很类似,只不过在 mht 格式中,外部链接进来的文件,比如图片 、

Javascript、CSS 会被 base64 进行编码存储。因此,单个 mht 文件就可以保存一个网页中

的所有资源,当然,相比

html,它的尺寸也会比较大。

  

mht 格式能被 word 识别吗?我将一个网页保存成 mht,然后修改后缀名为 doc,再

word 打开,OK,word 也可以识别 mht 文件,并且可以显示图片。

  好了,既然

doc 可以识别 mht,下面就是考虑如何将图片放入 mht 了。由于 html 代