word是很常见的一种文本,和excel一样,都属于windows的办公软件,其实在PHP的应用中,excel是比较常见的,我们经常做php excel的导入导出功能,并且网上有一堆的php excel插件,相对于word较多一些,而关于php生成word,在网上也找了不少的材料,有的是根据com组件来完成,有的是使用php扩展来完成,还有需要安装各种插件来完成的,总之,感觉有点乱,也比较麻烦,所以我尝试了一下使用php生成excel的方法来创建,竟然成功了,这是一种比较简洁且高效的方法,先创建一个 word 类,暂时命名为 class.word.php,代码如下:,我们在需要创建word文档的php中进行引用就可以了,具体代码如下:,其中实例代码是跨平台的,也是独立的php代码,我们可以移平台和框架来使用,比如我们要在tp平台下使用的话,就可以将类文件放到D层里面就OK了,这仅是PHP生成单个word文档的实例,如果是多用户需要生成多个word文件,就需要我们自己手动修改一下了。,

word是很常见的一种文本,和excel一样,都属于windows的办公软件,其实在PHP的应用中,excel是比较常见的,我们经常做php excel的导入导出功能,并且网上有一堆的php excel插件,相对于word较多一些,而关于php生成word,在网上也找了不少的材料,有的是根据com组件来完成,有的是使用php扩展来完成,还有需要安装各种插件来完成的,总之,感觉有点乱,也比较麻烦,所以我尝试了一下使用php生成excel的方法来创建,竟然成功了,这是一种比较简洁且高效的方法,先创建一个 word 类,暂时命名为 class.word.php,代码如下:

  1. class Word{  
  2.   
  3.   function start(){  
  4.   
  5.     ob_start(); //打开输出控制缓冲  
  6.   
  7.     echo '';  
  8.   
  9.   }  
  10.   
  11.   function save($path){  
  12.   
  13.     echo "";  
  14.   
  15.     $data=ob_get_contents(); //返回输出缓冲区的内容  
  16.   
  17.     ob_end_clean(); //清空缓冲区并关闭输出缓冲  
  18.   
  19.     $this->writeFile($path,$data); //将缓冲区内容写入word  
  20. //www.xiariboke.net  
  21.   }  
  22.   
  23.   function writeFile($fn,$data){  
  24.   
  25.     $fp=fopen($fn,"wb+");  
  26.   
  27.     fwrite($fp,$data);  
  28.   
  29.     fclose($fp);  
  30.   
  31.   }  
  32.   
  33. }  

我们在需要创建word文档的php中进行引用就可以了,具体代码如下:

  1.   
  2. include("class.word.php");  
  3.   
  4. $word=new Word();  
  5.   
  6. $word->start();  
  7.   
  8. //以下内容会保存在WORD文件中,可以使用HTML标签  
  9.   
  10. ?>  
  11.   
  12.  

    直接用php创建word文档

      
  13.   
  14.  作者:axgle  
  15.   
  16. "1">  
  17.   
  18.  如果你打开data.doc,看到了这里的介绍,则说明word文档创建成功了。  
  19.   
  20.   
  21.   
  22. 不论是在什么操作系统下,使用本方法都可以直接用PHP生成word文档。绝对不是吹牛!  
  23.   
  24. 就算是没有安装word,也能够生成word文件。  
  25.   
  26. 当然了,生成的word文件可以用word,wps或者其他软件打开。  
  27.   
  28.   
  29.   
  30. 使用方法:  
  31.   
  32. "filtered">  
  33.   
  34. 首先用$word->start()表示要生成word文件了。  
  35.   
  36. 然后你可以输出任何的HTML代码,不论是从文件读过来再写到这里,还是直接在这里输出HTML,都没有关系。  
  37.   
  38. 等你输出完毕后,用$word->save($path)方法,其中$path是你想生成的word文件的名称(可以给出完整的路径).当你使用了$word->save()方法后,这后面的任何输出都和word文件没有关系了,也就是说word的生成工作就完成了。之后就和你平常使用php的方式一样拉。随便你输出什么东西,都直接在浏览器里输出,而不会写到word里面去。  
  39.   
  40. 这是本人想到的一个很有意思的方法,它的实现方法出人意料的简单,并且避免了对windows环境的依赖。  
  41.   
  42. "filtered">哈哈,很有意思吧?享受它吧!  
  43.   
  44. "1">  
  45.   
  46.   
  47. //以上内容会保存在WORD文件中  
  48.   
  49. $word->save("data.doc");//保存word并且结束.  
  50.   
  51. //以下内容正常输出在页面文件中  
  52.   
  53. header("Content-type:text/html;charset=utf-8");  
  54.   
  55. echo 'data.doc生成成功,请到目录下查看"filtered">';  

其中实例代码是跨平台的,也是独立的php代码,我们可以移平台和框架来使用,比如我们要在tp平台下使用的话,就可以将类文件放到D层里面就OK了,这仅是PHP生成单个word文档的实例,如果是多用户需要生成多个word文件,就需要我们自己手动修改一下了。

,

word是很常见的一种文本,和excel一样,都属于windows的办公软件,其实在PHP的应用中,excel是比较常见的,我们经常做php excel的导入导出功能,并且网上有一堆的php excel插件,相对于word较多一些,而关于php生成word,在网上也找了不少的材料,有的是根据com组件来完成,有的是使用php扩展来完成,还有需要安装各种插件来完成的,总之,感觉有点乱,也比较麻烦,所以我尝试了一下使用php生成excel的方法来创建,竟然成功了,这是一种比较简洁且高效的方法,先创建一个 word 类,暂时命名为 class.word.php,代码如下:

  1. class Word{  
  2.   
  3.   function start(){  
  4.   
  5.     ob_start(); //打开输出控制缓冲  
  6.   
  7.     echo '';  
  8.   
  9.   }  
  10.   
  11.   function save($path){  
  12.   
  13.     echo "";  
  14.   
  15.     $data=ob_get_contents(); //返回输出缓冲区的内容  
  16.   
  17.     ob_end_clean(); //清空缓冲区并关闭输出缓冲  
  18.   
  19.     $this->writeFile($path,$data); //将缓冲区内容写入word  
  20. //www.xiariboke.net  
  21.   }  
  22.   
  23.   function writeFile($fn,$data){  
  24.   
  25.     $fp=fopen($fn,"wb+");  
  26.   
  27.     fwrite($fp,$data);  
  28.   
  29.     fclose($fp);  
  30.   
  31.   }  
  32.   
  33. }  

我们在需要创建word文档的php中进行引用就可以了,具体代码如下:

  1.   
  2. include("class.word.php");  
  3.   
  4. $word=new Word();  
  5.   
  6. $word->start();  
  7.   
  8. //以下内容会保存在WORD文件中,可以使用HTML标签  
  9.   
  10. ?>  
  11.   
  12.  

    直接用php创建word文档

      
  13.   
  14.  作者:axgle  
  15.   
  16. "1">  
  17.   
  18.  如果你打开data.doc,看到了这里的介绍,则说明word文档创建成功了。  
  19.   
  20.   
  21.   
  22. 不论是在什么操作系统下,使用本方法都可以直接用PHP生成word文档。绝对不是吹牛!  
  23.   
  24. 就算是没有安装word,也能够生成word文件。  
  25.   
  26. 当然了,生成的word文件可以用word,wps或者其他软件打开。  
  27.   
  28.   
  29.   
  30. 使用方法:  
  31.   
  32. "filtered">  
  33.   
  34. 首先用$word->start()表示要生成word文件了。  
  35.   
  36. 然后你可以输出任何的HTML代码,不论是从文件读过来再写到这里,还是直接在这里输出HTML,都没有关系。  
  37.   
  38. 等你输出完毕后,用$word->save($path)方法,其中$path是你想生成的word文件的名称(可以给出完整的路径).当你使用了$word->save()方法后,这后面的任何输出都和word文件没有关系了,也就是说word的生成工作就完成了。之后就和你平常使用php的方式一样拉。随便你输出什么东西,都直接在浏览器里输出,而不会写到word里面去。  
  39.   
  40. 这是本人想到的一个很有意思的方法,它的实现方法出人意料的简单,并且避免了对windows环境的依赖。  
  41.   
  42. "filtered">哈哈,很有意思吧?享受它吧!  
  43.   
  44. "1">  
  45.   
  46.   
  47. //以上内容会保存在WORD文件中  
  48.   
  49. $word->save("data.doc");//保存word并且结束.  
  50.   
  51. //以下内容正常输出在页面文件中  
  52.   
  53. header("Content-type:text/html;charset=utf-8");  
  54.   
  55. echo 'data.doc生成成功,请到目录下查看"filtered">';  

其中实例代码是跨平台的,也是独立的php代码,我们可以移平台和框架来使用,比如我们要在tp平台下使用的话,就可以将类文件放到D层里面就OK了,这仅是PHP生成单个word文档的实例,如果是多用户需要生成多个word文件,就需要我们自己手动修改一下了。

最后修改:2025 年 09 月 10 日
如果觉得我的文章对你有用,请随意夸赞