基于COM的PHP与Microsoft Office的应用集成技术

来源 :商场现代化 | 被引量 : 0次 | 上传用户:eimayao
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要] 本文主要介绍基于COM的PHP与Microsoft Office的应用集成技术,并通过具体的应用示例说明其编程模式。
  [关键词] Web;Office;PHP;COM;应用集成技术
  
  一、引言
  
  目前,Microsoft Office的应用已十分广泛,Web应用的发展也相当迅速(如电子商务、电子政务等)。在某些Web应用中,需要集成一定的Microsoft Office功能,如自动生成Word文档、Excel工作表或PowerPoint演示文稿等。为此,可使用COM技术并结合编程加以实现。
  PHP是目前流行的一种Web编程语言,具有开放源码、完全免费、可跨平台运行等优点,已成为各类Web应用的首选开发语言之一。因此,本文主要介绍基于PHP的Web应用集成Microsoft Office功能的基本技术。
  
  二、COM技术简介
  
  COM(Component Object Model,组件对象模型)是微软公司所推出并已得到广泛应用的一种组件标准。所谓组件,其实就是包含在动态链接库或可执行文件中的二进制的可执行代码。在一个组件中,可提供一个或多个对象,且每个对象均可拥有相应的方法、属性与集合。
  通过COM组件,可为应用程序、操作系统或其他组件提供某些服务。利用COM技术,也可实现应用程序之间的交互与无缝连接,共同完成复杂的功能,并使之具有良好的可扩展性与可维护性。
  在程序中,要使用组件所提供的某个对象,首先要创建该对象的实例,然后通过对象实例访问相应的方法、属性与集合。在完成所需要的操作后,再将对象实例删除掉,以释放其所占用的内存空间。
  
  三、PHP的COM功能
  
  在Windows平台下,PHP提供了内置的COM功能。利用PHP的COM类可创建有关组件对象的实例,基本格式为:
  $obj = new COM("ProgID");
  其中,COM为类名,ProgID为组件对象名,$obj为组件对象实例变量。通过实例变量并使用“->”运算符,即可引用组件对象的有关属性、集合与方法。若将实例变量赋为空值(NULL),则可清除相应的对象实例。
  
  四、PHP与Microsoft Office的应用集成
  
  Microsoft Office所包含的各个软件均有基于COM技术的组件对象,如Word、Excel、PowerPoint的组件对象分为Word.Application、Excel.Application、PowerPoint.Application。在PHP中,利用这些组件对象,即可集成相应的Microsoft Office应用。
  关于Microsoft Office中有关组件对象的模型及其用法,请查阅其技术文档或有关资料。在此,仅通过实例说明在PHP中集成Microsoft Office应用的基本方法与编程技术。
  1.PHP与Word的应用集成
  在PHP中集成Word功能,可动态地创建相应的文档,并在其中添加有关的内容,或实现相关的操作,如打印、保存等。
  实例一:动态生成Word文档,并提供下载链接。
  <?php
  $MyPath=dirname(stripslashes($_SERVER["PATH_TRANSLATED"]));
  $MyTFN="MyTest.doc"; //测试文档名
  $MyWord=new COM("Word.Application") or die("错误:无法启动Word");
  $MyWord->Visible=true;//显示Word窗口
  $MyWord->Documents->Add();//新建文档
  $MyText="测试内容abc...";
  $MyWord->Selection->TypeText($MyText);//输出内容
  $MyWord->Selection->TypeParagraph();//插入段落
  $MyRange=$MyWord->Selection->Range;
  $MyTable=$MyWord->ActiveDocument->Tables->Add($MyRange,3,5);//插入表格
  $MyCell=$MyTable->Cell(1,1);
  $MyCell->Range->InsertAfter("Test-1-1");
  $MyWord->ActiveDocument->SaveAs($MyPath."\\".$MyTFN);//保存文档
  $MyWord->Quit();//关闭Word窗口
  $MyWord=NULL;
  echo "下载".$MyTFN."文档";
  ?>
  2.PHP与Excel的应用集成
  在PHP中集成Excel功能,可动态地创建相应的电子表格文件,并完成相关的各种操作。这对于各种报表的生成来说,是较为实用的一种方案。
  实例二:动态生成Excel文件,并提供下载链接。
  <?php
  $MyPath=dirname(stripslashes($_SERVER["PATH_TRANSLATED"]));
  $MyTFN="MyTest.xls";
  $MyExcel=new COM("Excel.Application") or die("错误:无法启动Excel");
  $MyExcel->Visible=true;
  $MyExcel->Workbooks->Add();
  $MyExcel->Worksheets[1]->Cells[1][1]->Value="Test-1-1";
  $MyExcel->ActiveWorkbook->SaveAs($MyPath."\\".$MyTFN);
  $MyExcel->Quit();
  $MyExcel=NULL;
  echo "下载".$MyTFN."文件";
  ?>
  3.PHP与PowerPoint的应用集成
  在PHP中集成PowerPoint功能,同样可动态地创建相应的演示文稿,并完成相关的各种操作。
  实例三:动态生成PowerPoint文件,并提供下载链接。
  <?php
  $MyPath=dirname(stripslashes($_SERVER["PATH_TRANSLATED"]));
  $MyTFN="MyTest.ppt";
  $MyPP=new COM("PowerPoint.Application") or die("错误:无法启动PowerPoint");
  $MyPP->Visible=true;
  $pptPres=$MyPP->Presentations->Add();
  $aSlide=$pptPres->Slides->Add(1,1);//插入第1张幻灯片,采用1号样式
  $aSlide->Shapes[1]->TextFrame->TextRange->Text = "Test123...";
  $aSlide->Shapes[2]->TextFrame->TextRange->Text = "Testabc...";
  $MyPP->ActivePresentation->SaveAs($MyPath."\\".$MyTFN);
  $MyPP->ActivePresentation->close();
  $MyPP->Quit();
  $MyPP=NULL;
  echo "下载".$MyTFN."文件";
  ?>
  
  五、结束语
  
  在Web应用中集成一定的Microsoft Office功能,有利用进一步提高应用的水平,更好地满足用户的实际需要。利用本文所述的方法,可在PHP中动态地生成相应的Word文档、Excel工作表或PowerPoint演示文稿。在此基础上,再进行相应的研究与改进,即可实现更加复杂的操作,如自动进行排版、打印等。
  参考文献:
  [1]曹轶群孙一江张永学:PHP高级开发技术与应用[M].北京:清华大学出版社,2002.168~170
  [2]Microsoft Office2000的VBA帮助文档
其他文献
随着药品分类管理制度的实施和国家对医药市场的整顿日益加强,特别是在临床销售模式被不断规范的形式下,不少以临床销售为主要渠道的生产和经营企业,不得不考虑走OTC营销的道路,这使得本来就竞争激烈的OTC药品销售市场不得不面临更为严峻的竞争趋势。商品销售决胜在终端,OTC市场终端的争夺战势必会打得异常猛烈。如何抢占终端,如何在终端夺胜,成为每一个商家以及营销研究人员考虑的重中之重。    一、OTC药品
期刊
[摘要] 面对移动通信市场层出不穷的新形式和新变化,本文提出了基于4C理论的体验营销,首先阐述了体验营销和4C理论的概念和内涵,之后重点从4C理论的四个方面分析了通过增加美好的用户体验来提高客户满意度达到顾客和企业的共赢。   [关键词] 体验营销 4C理论 用户体验价值    一、移动通信企业的体验营销与4C理论     1.体验营销  体验营销是1998年美国战略地平线LLP公司的两位创始人B
期刊
[摘要] 贵州省是西部欠发达地区,但拥有丰富的资源,应该充分利用外商直接投资以促进区域经济的发展。本文从实证角度考察了贵州省吸收和利用FDI的现状,认为外商直接投资对促进贵州省的经济发展方面有一定的积极作用。对今后如何吸引外资及提高外商投资质量,进一步促进西部地区经济发展提出了政策建议。  [关键词] 贵州省 外商直接投资 对策  改革开放以来,贵州省与100多个国家和地区建立了经贸关系,基本形成
期刊
[摘要] 在渠道权力失衡的情况下,作为弱小一方该如何在这种不利的状况下争取一个更大、更好的生存空间呢?本文以家电企业为例,对该问题进行探悉,并提出在渠道权力失衡的情况下,作为弱小一方可供选择的对抗策略。  [关键词] 渠道权力 渠道冲突 家电连锁企业    一、问题的提出:家电行业四大霸王规则    家电市场向来都是刀光剑影,从轰轰烈烈的价格战到愈演愈烈的渠道圈地战,一直吸引着厂、商家和消费者的注
期刊
[摘要] GGDP无论是在理论上还是实践应用过程中都遇到了许多难题,如果不加以解决,那么GGDP的概念仅仅是理论上的,没有任何实用价值。本文在定义“绿色经济福利增长指数”概念的基础上克服了这些难题,并利用这一指数解读、预测中国经济的近年发展。通过建立一个关于“绿色经济福利增长指数”的计量经济模型并进行实证分析,从而对GGDP核算体系的构建提出了若干建议。  [关键词] GDP GGDP绿色经济福利
期刊
[摘要] 文章从北京CBD现状入手进行分析,在借鉴国际其他CBD的发展经验后,对CBD的核心价值进行研究,并提出了北京CBD的开发建议。  [关键词] CBD 核心价值 机遇  CBD是一个炙手可热的名词,CBD又是一个财脉喷张的区域。北京CBD方圆3.99平方公里的区域上聚集了全球500强企业的247家和近千家的跨国企业。可以说北京CBD是北京最具国际化、经济化、商务化的区域,这里是北京发展力和
期刊
[摘要] 本文主要以GIS为技术平台,开发了秦皇岛旅游信息系统,把秦皇岛市的旅游活动信息进行采集、存储、管理、分析、计算和显示,以各种手段综合的展示了GIS处理信息的结果,为秦皇岛市的旅游业发展提供可靠的科学依据。  [关键词] 地理信息系统(GIS) 旅游 信息系统 二次开发    一、前言    旅游地理信息系统(简称TGIS)是以旅游地理信息数据库为基础,在计算机硬软件支持下,运用系统工程和
期刊
[摘要] 自然人流动是WTO《服务贸易总协定》(GATS)下的一个术语,与国际劳务输出有着密切的联系。在我国,国际劳务输出具体有三种模式。其中,境内国际劳务输出不属于自然人流动,对外承包项下的外派劳务属于自然人流动,综合外派劳务是否属于自然人流动则尚不确定。鉴于此,我国要发展对外劳务输出,应该促进WTO内的自然人流动的谈判,提高具体承诺的水平,将东道国外国雇员提供服务纳入GATS;此外,还应加强国
期刊
[摘要] 技术创新是我国传统产业的活力之源,但不可避免的要遇到技术转换成本的问题。本文利用SWOT模型分别从优势、劣势、机会和威胁等方面对其进行了分析,并在此基础上提出了相应的策略运用空间。  [关键词] 传统产业 技术创新 转换成本 SWOT    一、引言    在新经济时代,各国都面临着传统产业向高新技术产业的发展与转移,我国处于这样一个大环境中,当然也概莫能外。目前在我国传统产业仍然占据主
期刊
[摘要] 通过对传统的应对产品同质化的两种方法——价格战和品牌战进行分析,指出其局限性和可能的负面效应。通过对客户关系管理的功能和作用的分析,指出客户关系管理已经成为破解产品同质化的重要途径。  [关键词] 产品同质化 客户关系管理 价格战 品牌战    在科学技术和信息高度发展的今天,各种产品和服务之间的差异越来越小,许多企业深陷产品同质化竞争的泥潭。市场上很多产品的种类、功能甚至包括外形都大同
期刊