一,首先要确认php版本,最好是高于5.6

二,将以下两行代码放入php.ini中并且重启

//这个是开启扩展
extension=php_com_dotnet.dll
//这个是COM扩展里自带的,只需将前面的;去掉就可以了
com.allow_dcom = true

三,自己编写一个三方类库文件,phpcom.php,如下:

<?phpclass PHPcom {/*** 返回word内容,和字数(字符数),版本* @param $url* @return array*/public static function php_com($url){$word = new COM("word.application") or die("Unable to instantiate Word");//打开路径为URL的word,doc或docx都可以$word->Documents->OPen($url);//读取内容$test= $word->ActiveDocument->content->Text;//统计字数$num = strlen($test);//解决读取过程中乱码问题$content= iconv('GB2312', 'UTF-8', $test);//查看版本$word_wersion = $word->Version;//是否要打开文件,0代表否,1代表是$word->Visible = 0;//关闭word句柄$word->Quit();//释放对象$word = null;return ['num'=>$num/2,'word_wersion'=>$word_wersion,'content'=>$content];}}
?>

四,在thinkphp的根目录下找到vendor文件夹,没有就自己创建一个

五,在vendor文件夹下创建phpcom文件夹,然后把phpcom.php文件放进去

ps:至此,准备工作就做好了,接下来我们就可以在常用函数文件(common.php)里写一个自定义函数了

六,在公共函数类common.php中写一个方便调用的方法

function read_com_word($url=''){//加载类库文件vendor("phpcom.phpcom");//剪切url目录(这是我自己的目录问题)$url = strstr($url,"uploads");$url = 'http://localhost/'.$url;//然后静态调用php_com方法就可以了$result = PHPcom::php_com($url);return $result;
}

七:注意,url有一个地方需要修改,就是你们传进来的url千万不能是绝对地址,不能是D:\WWW\这种,,一定要自己框架的路由地址,比如localhost/..,不然会出现错误,因为用绝对地址读取word内容,只能读取一次,然后word就会被锁定,然后就无法读取了,下面附上本人血的经验

八,现在php使用com读取word的流程就走完了,够详细吧?如果上面有什么不到位的地方,还请各路大神指点一下。

最详细的php使用com读取word文件,并且解决读取过程中乱码问题,doc/docx都适用,适用于thinkphp,laravel应该也可以相关推荐

  1. c语言读取word文件内容,c 读取word c 读取word文档

    c++如何读取word 基本步骤(1)创建)一个 MFC 的程序工程. 注意:在VC中对WORD进行操作需要在MFC AppWizard - Step 2 of4中的Automaiton选项上打上勾. ...

  2. python怎么读取中文文件-Python3 解决读取中文文件txt编码的问题

    问题描述 尝试用Python写一个Wordcloud的时候,出现了编码问题. 照着网上某些博客的说法添添改改后,结果是变成了"UnicodeDecodeError: "utf-8' ...

  3. Java读取word文件,字体,颜色

    在Android读取Word文件时,在网上查看时可以用tm-extractors,但好像没有提到怎么读取Word文档中字体的颜色,字体,上下标等相关的属性.但由于需要,要把doc文档中的内容(字体,下 ...

  4. POI读取word文件,(支持HSSF和XSSF两种方式)

    POI读取word文件,(支持HSSF和XSSF两种方式) 参考:HSSF,XSSF,SXSSF三种方式 1.引用maven(版本必须一致) <dependency><groupId ...

  5. 使用python读取word文件里的表格信息

    在企查查查询企业信息的时候,得到了一些word文件,里面有些控股企业的数据放在表格里,需要我们将其提取出来. word文件看起来很复杂,不方便进行结构化.实际上,一个word文档中大概有这么几种类型的 ...

  6. java准确读取word文件页数

    转自:https://blog.csdn.net/tiandixuanwuliang/article/details/71298406 由于本人在做一个网上打印网站,遇到了一个需求是"准确读 ...

  7. java读取word文件并设置其字体样式_Java读取word文件,字体,颜色(示例代码)

    在Android读取Word文件时,在网上查看时可以用tm-extractors,但好像没有提到怎么读取Word文档中字体的颜色,字体,上下标等相关的属性.但由于需要,要把doc文档中的内容(字体,下 ...

  8. Java 读取word文件的页数

    实现思路: 1,由于现有的插件读取word的页数不是很准确,于是将word文件转换为PDF文件 2,读取PDF文件的页数以获取word文件的页数 需要的插件:链接:https://pan.baidu. ...

  9. Java POI 读取word文件

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 1.读取word 2003及word 2007需要 ...

最新文章

  1. html怎么样取jsp中的路径,jsp中获得路径的两种方法和获得url路径的方法(推荐)
  2. Oracle字符集问题总结
  3. python怎么安装pyecharts_基于Python安装pyecharts所遇的问题及解决方法
  4. 《代码大全》阅读笔记-18-表驱动法
  5. 在执行方法和Web资源中获取传递过来参数的值
  6. linux chown命令格式,在Linux上如何使用chown命令 (文件所有权)
  7. 团队作业9——第二次项目冲刺2(Beta阶段)
  8. 让程序在崩溃时体面的退出之SEH
  9. pandaboard ES学习之旅——2 ES环境搭建
  10. LeetCode MySQL 1204. 最后一个能进入电梯的人(累加/变量/窗口函数)
  11. mac 电脑android环境变量设置,mac上Android环境变量配置
  12. BOOTP 与 DHCP
  13. 面向对象9:方法的重写、super关键字、子类对象的实例化过程
  14. 奔跑吧攻城狮 第一篇
  15. 视频技术系列 - 分析业内数字版权管理DRM技术
  16. scratch少儿编程航天主题:认识太阳系-八大行星连连看
  17. 道闸系统 无法连接消息服务器,道闸系统常见故障处理
  18. 报错:java.lang.NullPointerException 空指针异常
  19. MATLAB | 全网唯一,使用MATLAB绘制好看的韦恩图(venn)
  20. 开源HIDS OSSEC部署与扩展使用(安检)

热门文章

  1. 流浪大师善始者众善终者寡_流浪者–适合每个开发人员的瑞士军刀
  2. 借助 Adobe Scout 理解 Flash Player
  3. 迷你型云台摄像头组装方法
  4. 软件工程课程小组成员介绍
  5. python pop() ,如何在Python的列表或数组中移除元素
  6. 最近有什么厉害的计算机病毒?
  7. 出入口安装摄像机产生的逆光现象的…
  8. 远程执行命令的psexec工具的基本使用——简单、强大
  9. css(显示与隐藏、溢出)
  10. 信息与计算科学要学c语言吗,学“数学与应用数学”和“信息与计算科学”哪个好?...