Loading:


socket_set_option
bool socket_set_option ( resource $socket , int $level , int $optname , mixed $optval )


Funkcja ustawia opcje określone przez parametr optname, w określonym poziomie protokołu, do wartości wskazanej przez parametr optval 

 

Parametry

 

socket - gniazda ważnych zasobów utworzone za pomocą socket_create().

level - parametr level (poziom) określa poziom protokołu w któym znajduje się opcja. Dla przykładu do pocji na poziomie gniazda, poziom paratemtru  SOL_SOCKET zostaie wykorzystany. Inne poziomy, takie jak TCP, mogą być użyte przez określenie numeru poziomu protokołu. Numer protokołu można znaleść za pomocą funkcji getprotobyname()


optname - możliwe opcje gniazda są takie same jak dla funkcji socket_get_option()


optval - wartość opcji

 

Zwracane wartości

Zwraca TRUE w przypadku powodzenia, FALSE w przypadku błędu.



Napisz Artyku³

Listing


Example #1 socket_set_option() example
<?php
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

if (!is_resource($socket)) {
    echo 'Nie można utworzyć gniazda: '. socket_strerror(socket_last_error()) . PHP_EOL;
}

if (!socket_set_option($socket, SOL_SOCKET, SO_REUSEADDR, 1)) {
    echo 'Nie można ustawić opcji gniazda: '. socket_strerror(socket_last_error()) . PHP_EOL;
}

if (!socket_bind($socket, '127.0.0.1', 1223)) {
    echo 'Nie można powiązać gniazda: '. socket_strerror(socket_last_error()) . PHP_EOL;
}

$rval = socket_get_option($socket, SOL_SOCKET, SO_REUSEADDR);

if ($rval === false) {
    echo 'Nie można uzyskać opcji gniazda: '. socket_strerror(socket_last_error()) . PHP_EOL;
} else if ($rval !== 0) {
    echo 'SO_REUSEADDR jest ustawione na gniazdo !' . PHP_EOL;
}
?>
 




Dodano przez: igor
Ranga: Administrator serwisu Punktów: 0
Komentarze użytkowników
    • Tre¶æ komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2024 v.1.5 | design: diviXdesign & rainbowcolors