onClose

설명:

callback Connection::$onClose

이 콜백은 Worker::$onClose 콜백과 동일한 역할을 하지만, 현재 연결에 대해서만 유효하며, 특정 연결에 대해 onClose 콜백을 설정할 수 있다는 점이 다릅니다.

예제

use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$worker = new Worker('websocket://0.0.0.0:8484');
// 연결 이벤트가 발생할 때 실행
$worker->onConnect = function(TcpConnection $connection)
{
    // 연결의 onClose 콜백 설정
    $connection->onClose = function(TcpConnection $connection)
    {
        echo "connection closed\n";
    };
};
// 워커 실행
Worker::runAll();

위 코드는 아래와 같은 효과를 가집니다.

use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$worker = new Worker('websocket://0.0.0.0:8484');
// 모든 연결의 onClose 콜백 설정
$worker->onClose = function(TcpConnection $connection)
{
    echo "connection closed\n";
};
// 워커 실행
Worker::runAll();