PHP将上传word文件,转化为Html格式,(多种转换方式)
1、通过PHPOffice
1: composer require phpoffice/phpword
/* 通过composer安装 PHPOffice
需要*
或者用中国镜像:https://www.phpcomposer.com/
*/
2: 安装成功可看到 vendor文件夹
3: 使用方法 :
require 'vendor/autoload.php';
$phpWord = \PhpOffice\PhpWord\IOFactory::load('./4.docx');
$xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, "HTML");
$xmlWriter ->save('./ceshi.htm');
4:官方
/*
官方案例:https://phpword.readthedocs.io/en/latest/general.html
github: https://github.com/PHPOffice/PhpSpreadsheet
*/
2、通过python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
from win32com import client as wc
import sys
def saveHtm():
# print(wordPath)
# print(htmPath)
wordPath = 'E:/1.doc'
htmPath = 'E:/1.htm'
word = wc.Dispatch( 'Word.Application' )
print (word)
doc = word.Documents. Open ( 'E:/1.doc' )
doc.SaveAs( "E:/1.htm" , 8 ) / / 转化为htm格式
doc.SvaeAs( "E:/1.fpt" , 17 )
doc.Close()
word.Quit()
if __name__ = = '__main__' :
saveHtm()
|
3、同时Offic API直接在网页显示word文档。
src="http://view.officeapps.live.com/op/view.aspx?src=公网上能访问的word文档地址" >
例
src="http://view.officeapps.live.com/op/view.aspxsrc=newteach.pbworks.com%2Ff%2Fele%2Bnewsletter.docx"
4、通过com组件
需要所在宿主机,有offic的环境,Linxu下不能使用
实例扩展:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html xmlns= "http://www.w3.org/1999/xhtml" >
<head>
<meta http-equiv= "Content-Type" content= "text/html; charset=gb2312" />
<title>接收上传文件</title>
<?php
$conn = @ new COM( "ADODB.Connection" );
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath ( "person.mdb" );
$conn ->Open( $connstr );
$uploaddir = 'uploads/' ;
if (! is_dir ( $uploaddir )){
mkdir ( $uploaddir );
}
$filename = $_FILES [ 'filename' ][ 'name' ];
$filename = substr ( $_FILES [ 'filename' ][ "name" ],0, strpos ( $_FILES [ 'filename' ][ "name" ], "." ));
echo $filename ;
echo "<br>" ;
$uploadfile = $uploaddir . $filename . substr ( $_FILES [ 'filename' ][ "name" ], strpos ( $_FILES [ 'filename' ][ "name" ], "." ));
//目录名.文件名.后缀名
echo $uploadfile ;
echo "<br>" ;
$temploadfile = $_FILES [ 'filename' ][ 'tmp_name' ];
echo $temploadfile ;
echo "<br>" ;
move_uploaded_file( $temploadfile , $uploadfile ); //移动文件
$path = $_SERVER [ 'SCRIPT_FILENAME' ];
$filepath = $_SERVER [ "PHP_SELF" ];
$path = substr ( $path ,0, strpos ( $path , $filepath ));
echo $path ;
echo "<br>" ;
echo $filepath ;
$htmlpath = $path . "/shiyan4/" . $uploadfile ;
echo "<br>" ;
echo $htmlpath ;
word2html( $htmlpath );
//$query =@mysql_query( "Insert into $username(fname,file)values('$filename','$uploadfile')")or die("error");
?>
<?php
//http://tieba.baidu.com/f?kz=13975389
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);
}
print ( "Word转html完成!" );
?>
</head>
<body>
</body>
</html>
|
以上就是php将word转换为html格式代码分析的详细内容,更多关于php将word转换为html格式的方法的资料请关注服务器之家其它相关文章!
原文链接:https://www.py.cn/php/jiaocheng/31847.html