php将word转换为html格式代码分析

admin3年前PHP教程32

PHP将上传word文件,转化为Html格式,(多种转换方式)

1、通过PHPOffice

1: composer require phpoffice/phpword

/* 通过composer安装 PHPOffice
需要科学上网
或者用中国镜像:phpcomposer/
*/

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:官方

/*
官方案例:phpword.readthedocs.io/en/latest/general
github: github/PHPOffice/PhpSpreadsheet
*/

2、通过python


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="view.officeapps.live/op/view.aspx?src=公网上能访问的word文档地址" >

src="view.officeapps.live/op/view.aspxsrc=newteach.pbworks%2Ff%2Fele%2Bnewsletter.docx"

4、通过com组件

需要所在宿主机,有offic的环境,Linxu下不能使用

实例扩展:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="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
 //tieba.baidu/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格式的方法的资料请关注服务器之家其它相关文章!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

editplus和notepad++哪个好用

editplus和notepad++哪个好用Editplus和Notepad++哪个好用?在程序员的日常工作中,修改器的运用是不行缺少的,一个好用便利的文本修改器会在必定程度上提高工作效率,Notep...

php比较两个指定的日期的实例讲解

1、给定的日期格式相同,则使用简单的比较运算符来比较日期。<?php//声明两个日期、初始化$date1 = "2021-11-24";$date2 = "2001...

PHP中针对区域语言标记信息的操作

相信大家对 zh_CN 这个东西绝对不会陌生,不管是 PHP 中,还是在我们的网页上,都会见到它的身影。其实这就是指定我们的显示编码是什么国家或者地区的,使用何种语言。对于这种区域语言的标记来说,PH...

东莞高防服务器专注游戏服务器防护

东莞高防服务器专注游戏服务器防护?东莞高防服务器专注于游戏服务器防护是一种相对专业的服务,通常针对游戏服务器防护的需求,有以下几个方面的特点和要求:防护能力:游戏服务器面临的攻击形式比较多,例如DDo...

香港高防服务器哪家比较好

香港高防服务器哪家比较好?选择一家好的香港高防服务器服务提供商需要考虑多方面因素,以下是一些主要因素:网络质量:选择一家好的香港高防服务器服务提供商需要优先考虑其网络质量。网络质量包括网络带宽、网络延...

东南亚服务器为什么这么受欢迎

东南亚服务器受欢迎的原因如下:地理位置优势:东南亚离中国、日本、韩国和澳大利亚等地都比较近,而且区域内国家较多,人口数量众多,这为跨境业务拓展提供了很大的机会。更快的网站速度:使用东南亚服务器可以有效...