PHP使用COM 获取RTF内容

1. 需要在APP服务器上安装Office

2. 可能需要创建文件夹:Desktop
C:\Windows\SysWOW64\config\systemprofile\Desktop
3. 可能需要设置权限  component service,中找到 “Microsoft Office ….”中的属性,设置相关的权限

4. 可能需要设置Apache服务的登录用户名及密码

function getRTFtext($rtfFileName) {
    $result=‘‘;
    if (!is_file($rtfFileName)) {
        throw new ErrorException("File not found.");
    }
    $rtfFileName = realpath($rtfFileName);

    // Connect to Word
    if (!class_exists(‘COM‘)) {
        throw new ErrorException(‘COM extension is not enabled.‘);
    }

    $word = new COM("word.application");
    if (!$word) {
        throw new ErrorException(‘Unable to instantiate Word COM object.‘);
    }
    // Check the Word version.
    if ($word->Version < 12) {
        $word->Quit();
        $word = null;
        throw new ErrorException(‘The version of Word is too old.‘);
    }
    // $word->visible = 1;
    try {
        // Documents.Open: http://msdn.microsoft.com/en-us/library/office/ff835182%28v=office.14%29.aspx
        //$word->Visible=true;
        $word->Documents->Open($rtfFileName, FALSE, TRUE);

        $result= $word->ActiveDocument->content->Text;
        $word->ActiveDocument->Close(FALSE);
        //echo ‘‘.$test;
    } catch (Exception $e) {
        $word->Quit();
        $word = null;
        throw $e;
    }
    try {
        $word->Quit();
        $word = null;
    } catch (Exception $e) {
        var_dump($e);
    }

    return $result;
}
时间: 2024-10-04 21:50:23

PHP使用COM 获取RTF内容的相关文章

iOS 【野路子】获取WKWebView内容高度做H5原生连接

前言:是这样的,刚写完上一篇文章还没缓过神来,上一篇文章我还提到了,想和大家聊聊原生+H5如何无缝连接的故事.结果我朋友就给我发了两篇他的作品.他的做法也都有独到之处.好的文章都是这样,让你每次看都能有新的收获,我们也都致力于写一些能帮别人解决问题的文章,下面我用另一种方式来完美实现这个问题.毕竟之前大家都是根据UIWebView写的,我来说说换成WK之后的区别,主题思路也不同哦~ 插两个链接,是我朋友的大家也可以做个对比 iOS [终极方案]精准获取webView内容高度,自适应高度 iOS

从html字符串中获取div内容---jquery

思考的问题: 怎么在一个网页的div中嵌套另外的网页(不使用inclue,iframe和frame,不使用他们的原因,include只能嵌套静态网页,iframe对网络爬虫影响,frame嵌套网页无法获取父级页面信息,不够灵活) 如果不想嵌套整个网页怎么办?(只是嵌套另外页面的部分内容) 回答(想法): 使用jquery的ajax函数或者load函数可以获取网页内容,从而实现嵌套网页(获取到的网页内容是html字符串) 怎么从字符串中获取部分内容? 实践1: index.html页面(在这个页面

获取mysql内容,生成xml文件,并且以webservice形式发送

<xyt> <news id> <url></url> <title></title> </news> </xyt> 其实是三个知识点综合到一起的,包括如何访问mysql,如何生成xml文件,如何使用进行webservice开发 好了,话不多说,直接粘代码 package com.service; import java.io.FileOutputStream; import java.io.IOExcepti

iOS 【终极方案】精准获取webView内容高度,自适应高度

前言:是这样的,刚写完上一篇文章还没缓过神来,上一篇文章我还提到了,想和大家聊聊原生+H5如何无缝连接的故事.结果我朋友就给我发了两篇他的作品.他的做法也都有独到之处.好的文章都是这样,让你每次看都能有新的收获,我们也都致力于写一些能帮别人解决问题的文章,下面我用另一种方式来完美实现这个问题.毕竟之前大家都是根据UIWebView写的,我来说说换成WK之后的区别,主题思路也不同哦~ 插两个链接,是我朋友的大家也可以做个对比 iOS [终极方案]精准获取webView内容高度,自适应高度 iOS

PHP ftp获取目录内容为空

使用PHP的ftp函数获取目录内容,ftp_nlist()和ftp_rawlist()返回都为空. 查了一圈资料找不到答案,然后用Python写了一个,一样的操作就可以获取目录内容. 抓包发现,Python在获取目录内容之前自动改变为被动模式了,在PHP中ftp_rawlist()前也手动ftp_pasv($con, TRUE),就能获取到内容了. 总结:也许是对ftp协议不理解,导致了这样的问题,在此写下,防止各位再踩坑^_^

PHP curl获取页面内容,不直接输出到页面,CURLOPT_RETURNTRANSFER参数设置

使用PHP curl获取页面内容或提交数据,有时候希望返回的内容作为变量储存,而不是直接输出.这个时候就必需设置curl的CURLOPT_RETURNTRANSFER选项为1或true. 1.curl获取页面内容, 直接输出例子: <?php $url = 'http://52php.cnblogs.com'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPE

Swift - 文本输入框内容改变时响应,并获取最新内容

1,问题描述 有时我们开发的时候需要先把“确认”按钮初始设置为不可用,当文本框中输入文字以后,再将输入按钮变为可用. 2,实现原理 (1)要检测文本框内容的变化,我们需要让新界面的Controller遵循一个文本协议UITextFieldDelegate. 同时在viewDidLoad方法内将文本框的代理设置为MainListController当前实例. 然后实现textFile的shouldChangeCharactersInRange方法就能在文本框将要变化的时候执行一些代码. (2)但这

appium如何获取conten-desc内容文本

如何获取conten-desc内容文本 定位到该元素,通过getAttribute("name");来获取内容如:媒体报道 总结: 思路和selenium一样,可以理解为获取它的value值,只不过是括号写的name

POST信息模拟登录获取页面内容

最近项目里有一个是要模拟登录后,访问固定页面获取内容的要求,一开始用JQ AJAX好像不支持跨域请求.后使用.net中HttpWebRequest对象来获取.一开始访问总是无法在第二个页面正常访问,好像没通过登录验证,用postman模拟提交正常,后查询出原是忘记在第二次请求没把cookies关联上,关联上后请求正常. string wurl=""; string username="haxinet"; string userpwd="haxinet&qu