라이브러리

[PHP] SwooleEvent::add - EventLoop에 소켓의 새로운 콜백 함수를 추가합니다.




SwooleEvent::add


SwooleEvent::add는 Swoole 서버에서 이벤트를 등록하는 메서드입니다. 이 메서드는 이벤트 루프에 이벤트를 등록하여 이벤트가 발생할 때 콜백 함수를 호출합니다.

# 사용 방법


SwooleEvent::add는 다음 형식으로 사용할 수 있습니다.

#hostingforum.kr
php

SwooleEvent::add($fd, $event, $callback, $data = null, $priority = 0);



* `$fd`: 이벤트가 발생할 소켓의 파일 디스크립터입니다.
* `$event`: 이벤트 타입입니다. 다음 값 중 하나를 지정할 수 있습니다.
* `SwooleEvent::READ`: 읽기 이벤트
* `SwooleEvent::WRITE`: 쓰기 이벤트
* `SwooleEvent::CLOSE`: 닫힘 이벤트
* `SwooleEvent::CONNECT`: 연결 이벤트
* `SwooleEvent::RECEIVE`: 데이터 수신 이벤트
* `SwooleEvent::ERROR`: 오류 이벤트
* `SwooleEvent::TIMER`: 타이머 이벤트
* `$callback`: 이벤트가 발생할 때 호출할 콜백 함수입니다.
* `$data`: 콜백 함수에 전달할 데이터입니다. 디폴트는 null입니다.
* `$priority`: 이벤트의 우선 순위입니다. 디폴트는 0입니다.

# 예제


다음 예제는 SwooleEvent::add를 사용하여 읽기 이벤트를 등록하는 방법을 보여줍니다.

#hostingforum.kr
php

// Swoole 서버를 생성합니다.

$serv = new swoole_server("0.0.0.0", 9501);



// 이벤트 루프에 이벤트를 등록합니다.

$serv->on("connect", function ($serv, $fd) {

    echo "Client $fd connected.
";

});



$serv->on("receive", function ($serv, $fd, $from_id, $data) {

    echo "Client $fd received message: $data
";

    // 읽기 이벤트를 등록합니다.

    $serv->add($fd, SwooleEvent::READ, function ($serv, $fd, $data) {

        echo "Client $fd received data: $data
";

    });

});



// 서버를 시작합니다.

$serv->start();



이 예제에서는 Swoole 서버를 생성하고 이벤트 루프에 이벤트를 등록합니다. 읽기 이벤트가 발생할 때 콜백 함수를 호출하여 데이터를 수신합니다.

# 참고


SwooleEvent::add는 이벤트 루프에 이벤트를 등록하는 메서드입니다. 이벤트 루프는 이벤트를 처리하는 루프입니다. 이벤트 루프는 이벤트를 등록하고 이벤트가 발생할 때 콜백 함수를 호출합니다. SwooleEvent::add를 사용하여 이벤트 루프에 이벤트를 등록할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 102 페이지

검색

게시물 검색