socket_read

Reads a maximum of length bytes from a socket

&reftitle.description; ``string``false```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.

&reftitle.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`.

&reftitle.returnvalues;

`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.

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

&reftitle.changelog;

&Version; | &Description;
&sockets.changelog.socket-param;

&reftitle.seealso;

- `socket_accept`
- `socket_bind`
- `socket_connect`
- `socket_listen`
- `socket_last_error`
- `socket_strerror`
- `socket_write`