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