socket_write

(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)

socket_writeEscribe en un socket

Descripción

socket_write(Socket $socket, string $data, ?int $length = null): int|false

socket_write() escribe en el socket socket los datos del buffer data.

Parámetros

socket

data

El buffer a escribir.

length

El parámetro opcional length puede especificar explícitamente el tamaño de los datos que deben ser escritos. Si esta longitud es mayor que el tamaño de data, será reducida automáticamente al tamaño de data mismo.

Valores devueltos

socket_write() devuelve el número de bytes que han podido ser escritos en el socket o false en caso de error. El código de error generado puede ser obtenido llamando a la función socket_last_error(). Este código de error puede ser pasado a la función socket_strerror() para obtener un mensaje de error, legible para humanos.

Nota:

Es perfectamente válido que socket_write() devuelva cero, lo que significa que ningún byte ha sido escrito. Asegúrese de utilizar el operador === para comparar el retorno de la función con false, y detectar un caso de error.

Historial de cambios

Versión Descripción
8.0.0 socket is a Socket instance now; previously, it was a resource.
8.0.0 length ahora es nullable.

Notas

Nota:

socket_write() no escribe necesariamente todos los bytes de data proporcionados. Es válido que, siguiendo ciertas configuraciones de buffer de red, solo una cierta cantidad de datos, incluso un byte, sea escrito, incluso si data es más grande. Un ciclo debe ser utilizado para asegurarse de que el resto de data sea transmitido.

Ver también