(PHP 4 >= 4.3.0, PHP 5)
socket_set_option — Establece las opciones de socket para el socket
La función socket_set_option() establece la opción especificada por el parámetro optname, al nivel (level) del protocolo especificado, al valor apuntado por el parámetro optval para el socket.
Un recurso socket válido creado con socket_create() o socket_accept().
El parámetro level especifica el nivel de protocolo en el que reside la opción. Por ejemplo, para recuperar opciones a nivel de socket, se debería usar un parámetro level de SOL_SOCKET. Otros niveles, como TCP, se pueden usar para especificar el número de protocolo de ese nivel. Los números de protocolo se pueden encontrar usando la función getprotobyname().
Las opciones de socket dispobibles son las mismas que las de la función socket_get_option().
El valor opcional.
Devuelve TRUE en caso de éxito o FALSE en caso de error.
Example #1 Un ejemplo de socket_set_option()
<?php
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if (!is_resource($socket)) {
echo 'No se pudo crear elsocket: '. socket_strerror(socket_last_error()) . PHP_EOL;
}
if (!socket_set_option($socket, SOL_SOCKET, SO_REUSEADDR, 1)) {
echo 'No se pudo establecer la opción del socket: '. socket_strerror(socket_last_error()) . PHP_EOL;
}
if (!socket_bind($socket, '127.0.0.1', 1223)) {
echo 'No se pudo vincular el socket: '. socket_strerror(socket_last_error()) . PHP_EOL;
}
$rval = socket_get_option($socket, SOL_SOCKET, SO_REUSEADDR);
if ($rval === false) {
echo 'No se pudo obtener la opción del option: '. socket_strerror(socket_last_error()) . PHP_EOL;
} else if ($rval !== 0) {
echo 'SO_REUSEADDR está establecido en el socket !' . PHP_EOL;
}
?>
Versión | Descripción |
---|---|
4.3.0 | Esta función fue renombrada. Se solía llamar socket_setopt(). |