host_ = $host; $this->port_ = $port; } /** * Sets the accept timeout * * @param int $acceptTimeout * @return void */ public function setAcceptTimeout($acceptTimeout) { $this->acceptTimeout_ = $acceptTimeout; } /** * Opens a new socket server handle * * @return void */ public function listen() { $this->listener_ = stream_socket_server('tcp://' . $this->host_ . ':' . $this->port_); } /** * Closes the socket server handle * * @return void */ public function close() { @fclose($this->listener_); $this->listener_ = null; } /** * Implementation of accept. If not client is accepted in the given time * * @return TSocket */ protected function acceptImpl() { $handle = @stream_socket_accept($this->listener_, $this->acceptTimeout_ / 1000.0); if (!$handle) { return null; } $socket = new TSocket(); $socket->setHandle($handle); return $socket; } }