int fsockopen(string hostname, int port, int [errno], string [errstr], double [timeout]);
Créer un flot de connexion à líInternet (AF_INET) ou à un domaine Unix (AF_UNIX). Via Internet, cette fonction va ouvrir une socket de connexion TCP à líhôte hostname sur le port port. Via un domaine Unix, hostname représente le chemin jusquíà la socket, port doit être mis à 0. Lí option timeout est utilisable pour donner une durée maximale à cet appel.
fsockopen() retourne un pointeur de fichier qui peut être utilisé avec díautres fonctions fichiers, telles que fgets(), fgetss(), fputs(), fclose(), feof()).
Si líappel échoue, fsockopen() retourne faux, et si les options errno et errstr ont été fournis, elles contiennent désormais les raisons de líechec. Si líerreur retournée est 0 et que la fonction retourne false, cíest une indication díerreur. Cíest probablement du à une erreur díinitialisation de la socket. Notez que errno et errstr sont passés par référence.
Suivant les environnements, le type ëdomaine Unixí ou líoption timeout ne sont pas toujours disponibles.
La socket sera ouverte par défaut en mode bloquant. Vous pouvez changer de mode en utilisant : set_socket_blocking().
Exemple 1. Exemple fsockopen $fp = fsockopen("www.php.net", 80, &$errno, &$errstr, 30); if(!$fp) { echo "$errstr ($errno)<br>\n"; } else { fputs($fp,"GET / HTTP/1.0\n\n"); while(!feof($fp)) { echo fgets($fp,128); } fclose($fp); } |
Voir aussi: pfsockopen()