PHP读取Word问题
PHP 生成 word 文档,可以考虑以下两类办法:1. 利用 windows 系统提供的 com组件。
这种方法的原理,是使用 php 的调用 com 组件功能函数,如果系统里安装过 office 的服务器,就可以调用 word.application 。
2. 利用PHP将内容写入doc文件之中。
这种方法,难分为两种,一种是生成mht格式写入word,另一种是编写纯 HTML 格式写入word。
这种方法是基于 word 对 html 的良好支持。
怎样用PHP读取一个word文档内容并在浏览器中显示出来?
网页中直接显示WORD文档需要浏览器有控件支持控件可以百度一下,NKO OFFICE控件 不过是收费的,也有注册版的低版本的控件可以直接原生显示WORD文档内容没什么特别方法,因为早期word格式并不公开,所以除了调用office组件否则无法正确读取数据。
可行的方式是将word文档后台转换为pdf或者其他格式,我印象中网上有php调用后台程序将doc转换为pdf,前台用flash显示的参考代码,可以搜搜看,其实就是类似百度文库的那种显示方式。
在PHP 中用readfile函数读取doc文件时显示的是乱码
展开全部Doc文件当然是乱码啊。
你用记事本打开doc文件就是乱码。
doc文件被word编码过了的,不可能简单的就能直读。
如果想读自己预设的doc或者用php生成别人能用word打开看的doc文件很简单。
因为doc可以直接写成html格式但如果你想用PHP读别人用word保存的文件,在windows下必须用到php的COM组件word.application。
并且服务器安装了word程序。
这段程序网上很多,我就不再复制了。
如果是linux服务器的话,方法五花八门,可以找第三方开发的程序比如catword,antiword,装了openoffice也可以用它的组件
如何在php中插入word表格
一般,有2种方法可以导出doc文档,一种是使用com,并且作为php的一个扩展库安装到服务器上,然后创建一个com,调用它的方法。
安装过office的服务器可以调用一个叫word.application的com,可以生成word文档,不过这种方式我不推荐,因为执行效率比较低(我测试了一下,在执行代码的时候,服务器会真的去打开一个word客户端)。
理想的com应该是没有界面的,在后台进行数据转换,这样效果会比较好,但是这些扩展一般需要收费。
php 怎么实现读取word文档内容,显示到html上面?能给个案例最好...
1. 如果在win可以用com组件读取:// 建立一个指向新COM组件的索引 $word = new COM("word.application") or die("Can't start Word!"); // 显示目前正在使用的Word的版本号 //echo "Loading Word, v. {$word->Version}"; // 把它的可见性设置为0(假),如果要使它在最前端打开,使用1(真) // to open the application in the forefront, use 1 (true) //$word->Visible = 0; //打?一个文档 $word->Documents->OPen("d:\a.doc"); //读取文档内容 $test= $word->ActiveDocument->content->Text; echo $test; echo ""; //将文档中需要换的变量更换一下 $test=str_replace("<;{变量}>;","这是变量",$test); echo $test; $word->Documents->Add(); // 在新文档中添加文字 $word->Selection->TypeText("$test"); //把文档保存在目录中 $word->Documents[1]->SaveAs("d:/myweb/comtest.doc"); // 关闭与COM组件之间的连接 $word->Quit(); 2. linux可用antiword插件去实现
PHP实现对word文档的读取
传就传吧,后台传什么文件都可以,原样保留在文件夹下面就行了,天台的直接指向它,只要前台安装了相应的程序就能打开,例如指向一个WORD的代码可以是:WORD附件你可能觉得这样很不好,前台会弹出WORD窗口打开文件。
但是没有别的完美的办法,因为把WORD转换为HTML都会丢失重要信息的:文件内部链接会丢失、文件打印格式会丢失、文件显示格式也不完全支持,甚至会变得很难看。
一句话,你的后台最好不要对WORD文件进行处理,尽管有方法(就是使用DCOM调用WORD打开文件,然后另存为网页格式)
如何在php下实现word转换成HTML,都进来看看吧
你好,试试我这个吧刚刚测试完的。
直接用php把word文档转化成HTML文件 适用于windows和安装了word的环境 */ function word2html($wfilepath) { $word=new COM("Word.Application") or die("无法打开 MS Word"); $word->visible = 1 ; $word->Documents->Open($wfilepath)or die("无法打开这个文件"); $htmlpath= substr($wfilepath,0,-4); $word->ActiveDocument->SaveAs($htmlpath,8); $word->quit(0); } $w="G:/www/test.doc"; word2html($w); print( "Word转html完成!" ); ?>
用thinkPHP上传一份word文件,怎样显示出来
Version}";//把它的可见性设置为0(假),如果要使它在最前端打开,使用1(真)$word->Visible = 1;//---------------------------------读取Word内容操作 START-----------------------------------------//打开一个word文档$word->Documents->Open($url.$wordname);//将filename.doc转换为html格式,并保存为html文件$word->Documents[1]->SaveAs(dirname(__FILE__)."/".$htmlname,8);//获取htm文件内容并输出到页面 (文本的样式不会丢失)$content = file_get_contents($url.$htmlname);echo $content;//获取word文档内容并输出到页面(文本的原样式已丢失)$content= $word->ActiveDocument->content->Text;echo $content;//关闭与COM组件之间的连接$word->Documents->close(true);$word->Quit();$word = null;unset($word);//---------------------------------新建立Word文档操作 START--------------------------------------//建立一个空的word文档$word->Documents->Add();//写入内容到新建word$word->Selection->TypeText("$content");//保存新建的word文档$word->Documents[1]->SaveAs(dirname(__FILE__)."/".$wordname);//关闭与COM组件之间的连接$word->Quit();}php_Word("tesw.doc","filename.html","写入word的内容");?>
转载请注明出处51数据库 » php com word
直径无限扩张