您的位置:首页 > 编程语言 > PHP开发

PHP 开启COM组件 读取word文件

2016-06-06 17:56 603 查看
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();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: