【发布时间】:2012-01-16 20:13:56
【问题描述】:
是否可以在 PHP 中实现事件驱动程序?
类似javascript的东西。
例如,尝试打开一个socket(open_socket)并执行一些其他的command(do_something_else),而不是等待套接字请求的成功响应。
得到成功响应后执行callback_execute。
//--------------------------------------------------------------------
public function open_socket(){
$this->socketResource = fsockopen($this->nodeIp,$this->portNumber);
}
public function callback_execute(){
fputs($this->socketResource,$command);
}
public function do_something_else{ xxxxx }
//--------------------------------------------------------------------
Non_blocking_function($obj->open_socket(),$obj->callback_execute());
$obj->do_something_else();
【问题讨论】:
-
《实现代码驱动的程序》,你看过自己写的吗?
-
因为 PHP 不能是多线程的,所以我要冒险说“不”。可以使用各种可怕的进程分叉解决方案来模仿这一点,但如果你想做这种事情,更好的解决方案是使用可以多线程或更接近模仿它的东西,比如 Java 或 Node.js。
-
@MДΓΓ БДLL - 我看到了这个问题,但答案没有给出任何提示。
-
@MДΓΓ БДLL,编辑了我的错误,感谢指出:)
标签: php javascript events