8.122 Sockets
8 Référence des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes pré-définies . Erreurs de socket . Exemples . socket_accept ->socket_bind . socket_clear_error . socket_close . socket_connect . socket_create_listen . socket_create_pair . socket_create . socket_get_option . socket_getpeername . socket_getsockname . socket_last_error . socket_listen . socket_read . socket_recv . socket_recvfrom . socket_select . socket_send . socket_sendto . socket_set_block . socket_set_nonblock . socket_set_option . socket_shutdown . socket_strerror . socket_write
|
8.122.10 socket_bind()Lie un nom à une socket[ Exemples avec socket_bind ] PHP 4 >= 4.1.0, PHP 5
bool
socket_bind (
resource
socket
,
string
address
,
int
port
)
Lie le nom donné par
address
à l'interface de connexion décrite par
socket
. Ceci doit être effectué avant qu'une
connexion puisse être établie en utilisant
socket_connect
ou
socket_listen
.
-
socket
-
Une ressource de socket valide créée par la fonction
socket_create
.
-
address
-
Si la socket est de la famille
AF_INET
, le paramètre
address
est une IP numérique
(i.e.
127.0.0.1
).
Si la socket est de la famille
AF_UNIX
, le paramètre
address
le chemin d'une socket de domaine Unix
(i.e.
/tmp/my.sock
).
-
port
(Optional)
-
Le paramètre
port
est uniquement utilisé lors de la
connexion à une socket
AF_INET
et désigne le port
de l'hôte distant sur lequel la connexion doit être effectuée.
Cette fonction retourne
TRUE
en cas de
succès,
FALSE
en cas d'échec.
Le code erreur peut être récupéré avec la fonction
socket_last_error
.
Ce code peut être passé à la fonction
socket_strerror
pour récupérer le message textuel de l'erreur.
| Utilisation de socket_bind pour définir l'adresse de la source |
<?php // Création d'une nouvelle socket $sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
// Une liste d'adresse IP, par exemple, appartenent à l'ordinateur $sourceips['kevin'] = '127.0.0.1'; $sourceips['madcoder'] = '127.0.0.2';
// Lie l'adresse de la source socket_bind($sock, $sourceips['madcoder']);
// Connexion à l'adresse de destination socket_connect($sock, '127.0.0.1', 80);
// Écriture $request = 'GET / HTTP/1.1' . "\r\n" . 'Host: example.com' . "\r\n\r\n"; socket_write($sock, $request);
// Fermeture socket_close($sock);
?>
|
| Note | |
Cette fonction doit être utilisée sur la socket avant la fonction
socket_connect
.
|
| Note | |
Note de compatibilité avec Windows 9x/ME :
socket_last_error
peut retourner un code erreur
invalide lorsque vous tentez de lier une socket avec une adresse fausse, qui n'appartient
pas à la machine.
|
|