Sockets php avec fsockopen
accueil >
Cours >
PHP >
Sockets php avec fsockopen
Cours / tutoriel écrit le 17-06-2010 par sky
Utilisation des sockets en PHP
Utilisation des sockets php
Voici un exemple d'utilisation des sockets en php.
Dans cette exemple, on ce connecte au site viaphp.net, et on récupere une page.
fsockopen() retourne un pointeur de fichier qui peut être utilisé avec d'autres fonctions fichiers, telles fgets(), fgetss(), fputs(), fclose() et feof().
Si l'appel échoue, fsockopen() retourne FALSE, et si les options errno et errstr ont été fournies, elles contiennent désormais les raisons de l'échec.
Si l'erreur retournée est 0 et que la fonction retourne FALSE, c'est une indication d'erreur.
C'est probablement dû à une erreur d'initialisation de la socket.
Notez que errno et errstr sont toujours passées par référence.
<?php
// Exemple de récupération d'un document via HTTP
// en utilisant directement les sockets.
$serveur = "www.viaphp.net";
$document = "/demo/codes/socket_test.php";
$socket = fsockopen($serveur, 80, $codeErreur, $msgErreur);
if (!$socket)
{
echo "La connexion via la socket a échouée.<br />";
echo "Code d'erreur: $codeErreur<br />";
echo "Message d'erreur: $msgErreur<br />";
exit();
}
// Envoi de données au serveur
fputs($socket, "GET $document HTTP/1.1\r\n");
fputs($socket, "Host: $serveur\r\n");
fputs($socket, "\r\n");// Marque la fin des entêtes
// Lecture de la réponse et affichage du code source
while (!feof($socket))
{
$donnees = fgets($socket, 512);
echo htmlentities($donnees, ENT_QUOTES).'<br />';
}
?>
Commentaires
Aucun commentaire. Soyez le premier !