com_event_sink

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

com_event_sinkConnect events from a COM object to a PHP object

说明

com_event_sink ( variant $comobject , object $sinkobject [, mixed $sinkinterface ] ) : bool

Instructs COM to sink events generated by comobject into the PHP object sinkobject.

Be careful how you use this feature; if you are doing something similar to the example below, then it doesn't really make sense to run it in a web server context.

参数

comobject

sinkobject

sinkobject should be an instance of a class with methods named after those of the desired dispinterface; you may use com_print_typeinfo() to help generate a template class for this purpose.

sinkinterface

PHP will attempt to use the default dispinterface type specified by the typelibrary associated with comobject, but you may override this choice by setting sinkinterface to the name of the dispinterface that you want to use.

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE

范例

Example #1 COM event sink example

<?php
class IEEventSinker {
    var 
$terminated false;

   function 
ProgressChange($progress$progressmax) {
      echo 
"Download progress: $progress / $progressmax\n";
    }

    function 
DocumentComplete(&$dom$url) {
      echo 
"Document $url complete\n";
    }

    function 
OnQuit() {
      echo 
"Quit!\n";
      
$this->terminated true;
    }
}
$ie = new COM("InternetExplorer.Application");
// note that you don't need the & for PHP 5!
$sink = new IEEventSinker();
com_event_sink($ie$sink"DWebBrowserEvents2");
$ie->Visible true;
$ie->Navigate("http://www.example.org");
while(!
$sink->terminated) {
  
com_message_pump(4000);
}
$ie null;
?>

参见

相关文章
php com 函数 connect events from a com object to a php objectphp com 函数 returns a handle to an already running instance of a com objectphp cubrid mysql 兼容性函数 get column information from a result and return as an objectphp libevent 函数 remove an event from the set of monitored eventsphp frontbase 函数 get column information from a result and return as an objectphp firebird/interbase 函数 get an object from a interbase databasephp inotify 函数 read events from an inotify instancephp ldap 函数 parse result object from an ldap extended operationphp maxdb 函数 returns the error code from last connect callphp oci8 函数 returns the next row from a query as an objectphp simplexml 函数 get a simplexmlelement object from a dom nodephp socket 函数 create and connect to a socket from a given addrinfophp sqlite 函数 fetches the next row from a result set as an objectphp stream 函数 return a bucket object from the brigade for operating onphp com 函数 convert a variant into a new variant object of another typephp com 函数 returns the result from dividing two variantsphp com 函数 assigns a new value for a variant objectphp com 函数 subtracts the value of the right variant from the left variant valuephp sdo das relational 函数 returns the special root object in an otherwise empty data graph. used when creating a data graph from scratchphp sdo das xml 函数 creates an xml document object from scratch without the need to load a document from a file or string
关注编程学问公众号