Manuel PHP
Précédent |  | Suivant

# socket_bind

(PHP 4 >= 4.1.0, PHP 5)

socket_bind -- Lie un nom à une socket

## Description

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().

## Liste de paramètres

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.

## Valeurs de retour

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.

## Exemples

Exemple 1. 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); ?>`

## Notes

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

## Voir aussi

socket_connect()
socket_listen()
socket_create()
socket_last_error()
socket_strerror()

Précédent | Sommaire | Suivant
socket_accept | Niveau supérieur | socket_clear_error