php如何在线预览word文档

今天让做一个,在线预览word文档的功能,感觉还不错,就是没达到QQ邮箱那种预览的功能,呵呵

代码如下:

 

    /*
    * 必须将 php.ini 中的 com.allow_dcom 设为 TRUE
    */

    function php_Word($wordname,$htmlname,$content)
    {
        $url = $_SERVER['HTTP_HOST'];
        $url = '';
        $url = $url.$_SERVER['PHP_SELF'];
        $url = dirname($url)."/";
  //$url = substr(realpath("index.php"),0,strlen(realpath("index"))-9); 获取本地文件路径
        $word = new COM("word.application") or die("Unable to instanciate Word");

        //显示目前正在使用的Word的版本号
       // echo "Loading Word, v. {$word->Version}";

        //把它的可见性设置为0(假),如果要使它在最前端打开,使用1(真)
        $word->Visible = 1;
        //---------------------------------读取Word内容操作 START-----------------------------------------
        //打开一个word文档
        //$word->Documents->Open($url.$wordname);
   $word->Documents->Open(realpath("2.doc"));

        //将filename.doc转换为html格式,并保存为html文件
        $word->Documents[1]->SaveAs(dirname(__FILE__)."/".$htmlname,8);

        //获取htm文件内容并输出到页面 (文本的样式不会丢失)
        //$content = file_get_contents($url.$htmlname);
  $content = file_get_contents(realpath("women.html"));//自已新建一个html文档
        echo $content;

        //获取word文档内容并输出到页面(文本的原样式已丢失)
       // $content= $word->ActiveDocument->content->Text;
        //echo $content;

        //关闭与COM组件之间的连接
        $word->Documents->close(true);
        $word->Quit();
        $word = null;
        unset($word);
    }
    php_Word("tesw.doc","women.html","写入word的内容");
?>

这个是用com组件调用本地自带word的功能,测试过可以在线预览,并且转换成了html文档,挺好用的

你可能感兴趣的:(php)