4
PHP로 이벤트 구동 형 프로그램을 구현할 수 있습니까?PHP에서 이벤트 기반 코드를 구현하는 방법은 무엇입니까?
자바 스크립트와 같은 것입니다.
예를 들어 소켓 요청의 성공 응답을 기다리는 대신 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();
"코드 기반 프로그램 구현"자신의 글을 읽었습니까? –
가능한 [Event-Driven PHP Framework?] (http://stackoverflow.com/questions/8856530/event-driven-php-framework) 또한 http://stackoverflow.com/questions/6846118/event-driven을 참조하십시오. -architecture-and-hooks-in-php –
PHP는 다중 스레드 될 수 없기 때문에 사지에 나가서 "아니오"라고 말할 것입니다. 다양한 끔찍한 프로세스 포킹 솔루션으로이를 모방하는 것이 가능하지만, 이런 종류의 작업을 수행하려는 경우 Java 또는 Node.js와 같이 다중 스레드되거나 더 밀접하게 흉내낼 수있는 것을 사용하는 것이 더 좋습니다. – DaveRandom