PHP:Fatal error: Class 'COM' not found in … 的处理办法

1、首先在windows的“服务”里面检查COM+服务是否已经启动。如果未启动,请启动它。
大概是该服务:Windows Management Instrumentation

2、检查php目录ext文件夹下面php_com_dotnet.dll是否存在。(顺便说一下,ext通常作为php程序的扩展目录,在安装php的时候一般已经设置好。否则就应该不仅仅报主题所说的错咯。)

3、如果没问题,在php.ini里面加入以下语句:

[PHP_COM_DOTNET]
extension=php_com_dotnet.dll

4、php.ini中设置
com.allow_dcom = true

5.PHP版本
PHP 5.4.5以

原文地址:http://lylgxy0704wht.blog.163.com/blog/static/570480392014824104435552/

另文:http://haofish.cn/90.html

php用COM方式读取word文档错误jar 发布于 2015-06-03 20:46:55

要用php来读取word文档的时候,我们就想到了COM组件。具体安装测试如下:

PHP 开启COM组件

1)先在php.ini中打开COM选项

com.allow_dcom = true

2)我这里的环境是PHP5.4.7,PHP 5.4.5后,com/dotnet 模块已经成了单独的扩展,所以需要在PHP.ini中配置

extension=php_com_dotnet.dll

,如果PHP VERSION<5.4.5 则不需要。否则的话,可能就是报错 Fatal error: Class ‘COM’ not found 了。

配置方法为:只需在扩展列表里添加

extension=php_com_dotnet.dll

即可。

3)另外需要了解的是,COM组件虽然也是DLL扩展,但它不是PHP扩展,所以把Senc.dll拷贝到php/ext 目录,然后在php.ini里加载是错误的,PHP也不认识它。

配置完毕后可以用下面代码测试下:

word = new COM(“word.application”) or die(“Unable to instanciate Word”);  
print “Loaded Word, version {
word->Version}\n”;

上面语句本机必须安装了office才可以。

openoffice的为:

$obj = new COM(“com.sun.star.ServiceManager”) or die(“Unable to instanciate Word”);

下面是一个小的示例:(注意打开的路径写法)

word=newCOM(word.application)ordie(UnabletoinstanciateWord);printLoadedWord,version$word>Version\n;// word->Visible = 0;
//打开一个文档
word>Documents>Open(D:\wamp\www\test\1.doc);//便echo word->ActiveDocument->content->Text;
//关闭 word
$word->Quit();

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值