易洋国学旗下网站:
查询

com_event_sink()函数—用法及示例

「 为一个已经存在的 COM/OLE 对象动态地分配一个事件处理接口 」


函数名:com_event_sink()

适用版本:PHP 4 >= 4.2.0, PHP 5, PHP 7

用法:com_event_sink() 函数是用于为一个已经存在的 COM/OLE 对象动态地分配一个事件处理接口。该函数将一个事件源与一个事件接收者关联在一起。

语法:bool com_event_sink ( variant $comobject , mixed $sinkobject [, mixed $sinkinterface = "" ] )

参数:

  • $comobject:必需,一个有效的 COM/OLE 对象。
  • $sinkobject:必需,事件处理接收者对象。
  • $sinkinterface:可选,接口名称,可以是字符串表示的 IID,也可以是 PHP 类型名的字符串。

返回值:成功时返回 TRUE,失败时返回 FALSE。

示例:

// 创建 Word.Application 对象
$word = new COM("Word.Application");

// 定义事件处理接收者对象
class WordEventHandler
{
    public function OnQuit()
    {
        echo "Word application has been closed.";
    }
}

// 关联事件处理接收者对象
$eventHandler = new WordEventHandler();
com_event_sink($word, $eventHandler, "DocumentEvents");

// 关闭 Word 应用程序
$word->Quit();

在上述示例中,我们首先创建了一个 Word.Application 对象。然后,我们定义了一个名为 WordEventHandler 的类,该类包含一个名为 OnQuit 的方法,该方法将在 Word 应用程序关闭时被调用。接下来,我们使用 com_event_sink() 函数将该事件处理接收者对象关联到 Word.Application 对象上,并指定了接口名称为 "DocumentEvents"。

最后,我们调用 $word->Quit() 方法来关闭 Word 应用程序,触发事件处理接收者对象的 OnQuit() 方法,并输出提示信息 "Word application has been closed."。

补充纠错
上一个函数: com_get_active_object()函数
下一个函数: com_load_typelib()函数
热门PHP函数
分享链接