socket_read

Reads a maximum of length bytes from a socket

Description

stringfalse socket_read(Socket $socket, int $length, int $mode = PHP_BINARY_READ)

The function socket_read reads from the Socket instance socket created by the socket_create or socket_accept functions.

Parameters

socket

A Socket instance created with socket_create or socket_accept.

length

The maximum number of bytes read is specified by the length parameter. Otherwise you can use \r, \n, or \0 to end reading (depending on the mode parameter, see below).

mode

Optional mode parameter is a named constant:

  • PHP_BINARY_READ (Default) - use the system recv() function. Safe for reading binary data.
  • PHP_NORMAL_READ - reading stops at \n or \r.

Return Values

socket_read returns the data as a string on success, or false on error (including if the remote host has closed the connection). The error code can be retrieved with socket_last_error. This code may be passed to socket_strerror to get a textual representation of the error.

Note:

socket_read returns a zero length string ("") when there is no more data to read.

Changelog

Version Description
8.0.0 socket is a Socket instance now; previously, it was a resource.

See Also

  • socket_accept
  • socket_bind
  • socket_connect
  • socket_listen
  • socket_last_error
  • socket_strerror
  • socket_write