라이브러리
[PHP] SwooleCoroutineClient::recv
SwooleCoroutineClient::recv 소개
Swoole Coroutine Client는 PHP에서 비동기 TCP/UDP 소켓 통신을 지원하는 라이브러리입니다. Swoole Coroutine Client는 Swoole의 Coroutine 기능을 사용하여 비동기 통신을 지원하며, recv 메소드는 클라이언트가 서버로부터 데이터를 수신하는 메소드입니다.
SwooleCoroutineClient::recv 사용법
#hostingforum.kr
php
use SwooleCoroutineClient;
// 클라이언트 생성
$client = new Client(SWOOLE_SOCK_TCP);
// 서버 연결
$client->connect('127.0.0.1', 9501);
// 서버로부터 데이터 수신
$data = $client->recv();
// 데이터 출력
echo "수신 데이터: $data
";
SwooleCoroutineClient::recv 옵션
recv 메소드는 다음과 같은 옵션을 지원합니다.
* `length`: 수신 데이터의 길이를 지정합니다. 기본값은 0입니다.
* `timeout`: 수신 데이터를 기다리는 시간을 지정합니다. 기본값은 0입니다.
#hostingforum.kr
php
// 수신 데이터의 길이를 10바이트로 지정
$data = $client->recv(10);
// 수신 데이터를 5초 동안 기다립니다.
$data = $client->recv(0, 5);
예제: 서버와 클라이언트 통신
#hostingforum.kr
php
// 서버
use SwooleCoroutine;
Coroutine::create(function () {
$server = new SwooleCoroutineServer('127.0.0.1', 9501, SWOOLE_SOCK_TCP);
$server->set([
'worker_num' => 1,
]);
$server->on('receive', function ($server, $fd, $from_id, $data) {
echo "서버가 수신 데이터: $data
";
$server->send($fd, "서버가 전송하는 데이터");
});
$server->start();
});
// 클라이언트
use SwooleCoroutineClient;
Coroutine::create(function () {
$client = new Client(SWOOLE_SOCK_TCP);
$client->connect('127.0.0.1', 9501);
// 서버로부터 데이터 수신
$data = $client->recv();
// 데이터 출력
echo "수신 데이터: $data
";
// 서버에 데이터 전송
$client->send("클라이언트가 전송하는 데이터");
// 클라이언트 종료
$client->close();
});
이 예제에서는 서버와 클라이언트가 통신하는 예제입니다. 서버는 클라이언트로부터 데이터를 수신하고, 클라이언트는 서버로부터 데이터를 수신합니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.