1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
<?php
//Temps maximum d'exécution de la page <gras><couleur nom="rouge">nul</couleur></gras>
set_time_limit(0);
//Coordonnées du serveur == le pc qui lancera cette page
$port = 24243;
$adresse = "127.0.0.1";
//On crée la socket
if(($socket = socket_create(AF_INET, SOCK_STREAM, 0)) === false)
echo 'La création de la socket a échoué : '.socket_strerror($socket)."\n<br />";
//On assigne la socket à une adresse et à un port, que l`on va écouter par la suite
if(($assignation = socket_bind($socket, $adresse , $port)) < 0)
echo "L'assignation de la socket a échoué : ".socket_strerror($assignation)."\n<br />";
//On prépare l`écoute
if(($ecoute = socket_listen($socket)) === false)
echo "L'écoute de la socket a échoué : ".socket_strerror($ecoute)."\n<br />";
//Le code se bloque jusqu`à ce qu'une nouvelle connexion client soit établie
if(($client = socket_accept($socket)) === false)
echo "Le client n'a pas pu se connecter : ".socket_strerror($client)."\n<br />";
//Lors d'une connexion, le code reprend ici, il est temps de lire ce qu'on nous envoie
if(($reception = socket_read($client , 255)) === false)
echo "La socket n'a pas pu être lue : ".socket_strerror($reception)."\n<br />";
elseif( $reception == 'plop' )
$reponse = "J'aime les plop";
else
$reponse = "J'aime pas les ".$reception;
//Si ça ne marche pas, c'est qu`il est déconnecté
if(( socket_write($client, $reponse, strlen($reponse)) ) === false)
echo "Client déconnecté\n<br />";
else
echo "Message envoyé : ".$reponse;
//Fermeture de la socket du client
socket_close($client);
//Fermeture du serveur
socket_close($socket);
?> |
Partager