本文目录一览:
- 1、在PHP 中用readfile函数读取doc文件时显示的是乱码
- 2、怎样用PHP读取一个word文档内容并在浏览器中显示出来?
- 3、PHP怎样读取word文档实现在线预览,并且不受操作系统的限制,利用COM组件的话太受限了
- 4、PHP读取/生成word文档
在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文档内容并在浏览器中显示出来?
目前程序编译语言有很多种,其中php是最为常见的一种编程语言。php读取word文档是很多朋友都想了解的,下面就由达内的老师为大家介绍一下。
?php
/*
*
必须将
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)."/";
//建立一个指向新COM组件的索引
$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);
//将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的内容");
?
PHP怎样读取word文档实现在线预览,并且不受操作系统的限制,利用COM组件的话太受限了
你可以尝试一下PHPWord,用它可以把任意word文件转换为html网页,这样任何人都可以在浏览器里查看你的word文件了。
PHPWord
尽管目前只是测试版但是功能还是很强劲!完美兼容MF Word并且支持打开.doc or.docx。可以插入文本,文本符,分页,页眉/页脚,表格,列表中的元素,超链接等等。
地址:
PHP读取/生成word文档
?php
session_start();
header("content-type: application/msword");
header("content-disposition: attachment; filename=temp.doc");
header("pragma: no-cache");
header("expires: 0");
//从这里开始直接输出内容,任何形式
echo 'divimg src="http://'.$_SERVER['SERVER_NAME'].dirname($_SERVER['REQUEST_URI']).'/images/banner.jpg"/div';-php读取doc
echo str_replace('border="1"','border="0"',$_SESSION['create']);
?