exit; } $client = new Esockets\Client($config); // передаем конфигурацию, такую же, как для сервера if ($client->connect()) { error_log('успешно соединился!'); } // назначаем обработчик для новых входящих соединений. при соединении клиента к серверу будет вызван переданный обработчик $server->onConnectPeer(function ($peer) { /** * @var $peer \Esockets\Peer */ error_log('Принял входящее соединение ' . $peer->getAddress() . ' !'); // назначаем обработчик для чтения данных от присоединившегося клиента. при получении данных от подключенного клиента будет вызван переданный обработчик $peer->onRead(function ($msg) use($peer) { /** * @var $this \Esockets\Peer */ error_log('Получил сообщение от ' . $peer->getAddress() . ' ' . $msg . ' !'); }); // назначаем обработчик для отсоединения клиента от сервера. этот обработчик будет вызван при отсоединении клиента $peer->onDisconnect(function () use($peer) { error_log('Клиент ' . $peer->getAddress() . ' отсоединился от сервера'); }); }); // прослушиваем входящие соединения $server->listen(); // метод запускает обнаружение новых входящих соединений на сервере $client->send('HELLO WORLD!'); // метод возвращает true в случае успешной отправки, иначе false $server->read();
set_error_handler(function ($errno, $errstr, $errfile, $errline, array $errcontext) { error_log(sprintf('[%s]: %s in %s at %d line', error_type($errno), $errstr, $errfile, $errline)); }); $server = new \Esockets\Server(); if (!$server->connect()) { echo ' Не удалось запустить сервер! <br>' . PHP_EOL; exit; } $server->onConnectPeer(function ($peer) { /** * @var $peer \Esockets\Peer */ error_log(' Принял ' . $peer->getAddress() . ' !'); $peer->onRead(function ($msg) use($peer) { /** * @var $this \Esockets\Peer */ error_log(' Получил от ' . $peer->getAddress() . $msg . ' !'); }); $peer->onDisconnect(function () use($peer) { error_log('Чувак ' . $peer->getAddress() . ' отсоединиляс от сервера'); }); }); $client = new Esockets\Client(); if ($client->connect()) { error_log('успешно соединился!'); } $client->onDisconnect(function () { error_log('Меня отсоединили или я сам отсоединился!'); }); $client->onRead(function ($msg) {