Собственно, данные передаются функцией fwrite, нужно как то узнать, если запись на сокете оборвалась по таймеру.
function __construct($address, $remote_port, $timeout)
{
$this->address = $address;
$this->port = $remote_port;
$this->timeout = $timeout;
$this->fp = stream_socket_client("tcp://".$address.":".$remote_port, $errno, $errstr, $timeout);
}
public function Send($msg)
{
if (!$this->fp)
{
fclose($this->fp);
return false;
}
else
{
//Здесь нужно как то обработать ошибку таймера
//if (fwrite($this->fp, $msg) == TIMEOUT)
// return TIMEOUT// Что то в этом роде нужно произвести
fwrite($this->fp, $msg);
}
return true;
}