PHP 开启COM组件 读取word文件

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也不认识它。


// 建立一个指向新COM组件的索引

    $word = new COM("word.application") or die("Can't start Word!");
    // 显示目前正在使用的Word的版本号
    //echo "Loading Word, v. {$word->Version}";
    // 把它的可见性设置为0(假),如果要使它在最前端打开,使用1(真)
    // to open the application in the forefront, use 1 (true)
    //$word->Visible = 0;
    
    //打?一个文档
    $word->Documents->OPen(dirname(__FILE__)."/1.doc");
    //读取文档内容
    $test= $word->ActiveDocument->content->Text;
    echo $test;
    echo "";
    //将文档中需要换的变量更换一下
    $test=str_replace("<{变量}>","这是变量",$test);
    echo $test;
    $word->Documents->Add();
    // 在新文档中添加文字
    $word->Selection->TypeText("$test");
    //把文档保存在目录中
    $word->Documents[1]->SaveAs("2.doc");
    // 关闭与COM组件之间的连接
    $word->Quit();

猜你喜欢

转载自blog.csdn.net/u011125949/article/details/51597224
今日推荐