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

PHP调用COM函数

2013-10-25 16:27 369 查看
用PHP调用windows中的COM相关函数:

函数列表:

com_load — 创建一个COM组件的引用。

com_invoke — 调用一个COM组件的方法。

com_propget — 取一个COM组件的属性的值。

com_get — 同上,取一个COM组件的属性的值。

com_propput — 赋一个值给一个COM组件的属性。

com_propset — 同上,赋一个值给一个COM组件的属性。

com_set — 同上,赋一个值给一个COM组件的属性。

例1:

〈?

$word=new COM("word.application") or die("Cannot start word for you");

print "Loaded word version ($word->Version)n";

$word->visible =1 ;

$word->Documents->Add();

$word->Selection->Typetext("Dit is een test");

$word->Documents[1]->SaveAs("burb ofzo.doc");

$word->Quit();

?>

例2:

另外,有人给出了另一个例子,用 Delphi做了一个对象 MyObject (一个方法 ComTophp)。

也可以这样用:

$Obj = com_load("MyLibraryTest.MyObject");

$result = com_invoke($Obj,"ComTophp","arams 1","arams 2");

echo $result;

上面这个例子我可没试过哦。

例3:

〈?

# example use of ADODB and SQLOLEDB (MS-SQL 7) in PHP 4

# Tested on Win2K with PHP 4.02

$conn_obj = new COM("ADODB.Connection") or die("Cannot start ADO");

// replace myserver with your server name

define ("OLEDB_CONNECTION_STRING", "rovider=SQLOLEDB; Data Source=myserver; Initial Catalog=Northwind; User ID=sa; Password=");

// use SQL Server 7.0 OLE DB Provider

$conn_obj->Open(OLEDB_CONNECTION_STRING);

$command = "select lastname, firstname, title from employees"; // SQL Statement

$rs = $conn_obj->Execute($command); // Recordset

$i = 0;

$fld0 = $rs->Fields(0);

$fld1 = $rs->Fields(1);

$fld2 = $rs->Fields(2);

while (!$rs->EOF) {

$i += 1;

print "$fld0->value $fld1->value $fld2->value

";

$rs->MoveNext();

}

$rs->Close();

?>

好了,下面就逐个介绍吧。

//******************

com_load

(PHP3.0.3 - 3.0.16 only)

string com_load (string module name [, string server name])

创建一个COM组件新的引用,并返回它,如果失败,返回 false 。

参数分别是模块名和服务器名。

//********************

com_invoke

(PHP3.0.3 - 3.0.16 only, PHP4 )

mixed com_invoke (resource com_object, string function_name [, mixed function parameters, ...])

调用一个COM组件的方法。如果成功,返回function_name的返回值,否则,返回false。

参数分别是:模块引用,方法名,方法所需的参数,

//*************************

com_propget

(PHP3.0.3 - 3.0.16 only, PHP4 )

mixed com_propget (resource com_object, string property)

取COM组件的一个属性的值,本函数是 com_get() 的一个别名。

//*************************

com_get

(PHP3.0.3 - 3.0.16 only, PHP4 )

mixed com_get (resource com_object, string property)

参数分别是:COM引用,属性名。

如果错误,返回 false。

//***************************

com_propput

(PHP 3.0.3 - 3.0.16 only, PHP4 )

void com_propput (resource com_object, string property, mixed value)

给COM组件的一个属性付值。本函数是 com_set() 的一个别名。

//****************************

com_propset

(PHP3.0.3 - 3.0.16 only, PHP4 )

void com_propset (resource com_object, string property, mixed value)

这也是com_set()的一个别名。

//****************************

com_set

(PHP3.0.3 - 3.0.16 only, PHP4 )

void com_set (resource com_object, string property, mixed value)

给COM组件的一个属性赋值,参数是:组件模块名,属性名,新值。

如果错误,返回false,否则返回 true。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: