Heim  >  Artikel  >  Backend-Entwicklung  >  PHP创建word文档的方法(平台无关)_php技巧

PHP创建word文档的方法(平台无关)_php技巧

WBOY
WBOYOriginal
2016-05-16 19:55:22880Durchsuche

本文实例讲述了PHP创建word文档的方法。分享给大家供大家参考,具体如下:

关于用PHP生成word,在网上找了很多资料,有调用COM组件生成的,有安装PHP扩展生成的。都不免麻烦,以下为比较简洁的一种方法,且可跨平台。

以下为详细代码:

class.word.php

<&#63;php
class Word{
  function start(){
    ob_start(); //打开输出控制缓冲
    echo '<html xmlns:o="urn:schemas-microsoft-com:office:office"';
    echo 'xmlns:w="urn:schemas-microsoft-com:office:word"';
    echo 'xmlns="http://www.w3.org/TR/REC-html40">';
  }
  function save($path){
    echo "</html>";
    $data=ob_get_contents(); //返回输出缓冲区的内容
    ob_end_clean(); //清空缓冲区并关闭输出缓冲
    $this->writeFile($path,$data); //将缓冲区内容写入word
  }
  function writeFile($fn,$data){
    $fp=fopen($fn,"wb+");
    fwrite($fp,$data);
    fclose($fp);
  }
}

index.php

<&#63;php
include("class.word.php");
$word=new Word();
$word->start();
//以下内容会保存在WORD文件中,可以使用HTML标签
&#63;>
 <h1>直接用php创建word文档</h1>
 作者:axgle
<hr size=1>
 <p>如果你打开data.doc,看到了这里的介绍,则说明word文档创建成功了。
<p>
不论是在什么操作系统下,使用本方法都可以直接用PHP生成word文档。绝对不是吹牛!
就算是没有安装word,也能够生成word文件。
当然了,生成的word文件可以用word,wps或者其他软件打开。
<p>
<b>使用方法:</b>
<br>
首先用$word->start()表示要生成word文件了。
然后你可以输出任何的HTML代码,不论是从文件读过来再写到这里,
还是直接在这里输出HTML,都没有关系。
<p>等你输出完毕后,用$word->save($path)方法,其中$path是你想
生成的word文件的名称(可以给出完整的路径).当你使用了$word->save()
方法后,这后面的任何输出都和word文件没有关系了,也就是说word的生成
工作就完成了。之后就和你平常使用php的方式一样拉。随便你输出什么东西,
都直接在浏览器里输出,而不会写到word里面去。
<p>这是本人想到的一个很有意思的方法,它的实现方法出人意料的简单,并且避免
了对windows环境的依赖。
<br>哈哈,很有意思吧?享受它吧!
<hr size=1>
<&#63;php
//以上内容会保存在WORD文件中
$word->save("data.doc");//保存word并且结束.
//以下内容正常输出在页面文件中
header("Content-type:text/html;charset=utf-8");
echo 'data.doc生成成功,请到目录下查看<br>';
&#63;>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn