<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >COM</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="PHP 手册" HREF="index.html"><LINK REL="UP" TITLE="COM 和 .Net(Windows)函数" HREF="ref.com.html"><LINK REL="PREVIOUS" TITLE="COM 和 .Net(Windows)函数" HREF="ref.com.html"><LINK REL="NEXT" TITLE="DOTNET" HREF="class.dotnet.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP 手册</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="ref.com.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="class.dotnet.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="class.com" ></A >COM</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN21861" ></A ><P > (no version information, might be only in CVS)</P >COM -- COM 类</DIV ><DIV CLASS="refsynopsisdiv" ><A NAME="AEN21864" ></A ><H2 >大纲</H2 ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="synopsis" >$obj = new COM("server.object")</PRE ></TD ></TR ></TABLE ></DIV ><DIV CLASS="refsect1" ><A NAME="class.com.class" ></A ><H2 >描述</H2 ><P > COM 类提供了一个将 (D)COM 组件整合到 PHP 脚本中的框架。 </P ></DIV ><DIV CLASS="refsect1" ><A NAME="class.com.constructor" ></A ><H2 >方法</H2 >string <B CLASS="methodname" >COM::COM</B > ( string module_name [, string server_name [, int codepage]] )<BR ></BR ><P > COM 类构造函数。参数: <P ></P ><DIV CLASS="variablelist" ><DL ><DT >module_name</DT ><DD ><P > 被请求组件的名字或 class-id。 </P ></DD ><DT >server_name</DT ><DD ><P > DCOM 服务器的名字,组件在此服务器上被取用。如果是 <TT CLASS="constant" ><B >NULL</B ></TT >,则假定是 <TT CLASS="literal" >localhost</TT >。想要允许 DCOM,必须将 <TT CLASS="filename" >php.ini</TT > 中的 <TT CLASS="constant" ><B >com.allow_dcom</B ></TT > 设为 <TT CLASS="constant" ><B >TRUE</B ></TT >。 </P ></DD ><DT >codepage</DT ><DD ><P > 指定用于将 PHP 字符串(php-strings)转换成 UNICODE 字符串(unicode-strings)的代码页,反之亦然。可用的值为 <TT CLASS="constant" ><B >CP_ACP</B ></TT >、<TT CLASS="constant" ><B >CP_MACCP</B ></TT >、<TT CLASS="constant" ><B >CP_OEMCP</B ></TT >、<TT CLASS="constant" ><B >CP_SYMBOL</B ></TT >、<TT CLASS="constant" ><B >CP_THREAD_ACP</B ></TT >, <TT CLASS="constant" ><B >CP_UTF7</B ></TT > 和 <TT CLASS="constant" ><B >CP_UTF8</B ></TT >。 </P ></DD ></DL ></DIV > </P ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="example.com1" ></A ><P ><B >例 1. COM 示例 (1)</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> // 启动 word<br />$word = new COM("word.application") or die("Unable to instanciate Word");<br />print "Loaded Word, version {$word->Version}\n";<br /><br />//将其置前<br />$word->Visible = 1;<br /><br />//打开一个空文档<br />$word->Documents->Add();<br /><br />//随便做些事情<br />$word->Selection->TypeText("This is a test...");<br />$word->Documents[1]->SaveAs("Useless test.doc");<br /><br />//关闭 word<br />$word->Quit();<br /><br />//释放对象<br />$word->Release();<br />$word = null;</font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="example.com2" ></A ><P ><B >例 2. COM 示例 (2)</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> $conn = new COM("ADODB.Connection") or die("Cannot start ADO");<br />$conn->Open("Provider=SQLOLEDB; Data Source=localhost;<br />Initial Catalog=database; User ID=user; Password=password");<br /><br />$rs = $conn->Execute("SELECT * FROM sometable"); // 记录集<br /><br />$num_columns = $rs->Fields->Count();<br />echo $num_columns . "\n";<br /><br />for ($i=0; $i < $num_columns; $i++)<br />{<br /> $fld[$i] = $rs->Fields($i);<br />}<br /><br />$rowcount = 0;<br />while (!$rs->EOF)<br />{<br /> for ($i=0; $i < $num_columns; $i++)<br /> {<br /> echo $fld[$i]->value . "\t";<br /> }<br /> echo "\n";<br /> $rowcount++; // rowcount 自增<br /> $rs->MoveNext();<br />}<br /><br />$rs->Close();<br />$conn->Close();<br /><br />$rs->Release();<br />$conn->Release();<br /><br />$rs = null;<br />$conn = null;</font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="ref.com.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >起始页</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="class.dotnet.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >COM 和 .Net(Windows)函数</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.com.html" ACCESSKEY="U" >上一级</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >DOTNET</TD ></TR ></TABLE ></DIV ></BODY ></HTML >