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
| <?php
class Client {
//On Créer une socket TCP/IP.
function Client() {
$texte = "";
$masquefinderéponse = "";
$port = "portduserveur";
$adresse = "Ipduserveur";
$reception = "";
if ($socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec'=>2, 'usec'=>0));
echo "<span class=\"avertissements\">Connexion à ".$adresse." sur le port ".$port."...</span><br />";
//On s'y connecte
if (!socket_connect($socket, $adresse, $port)) echo "Impossible de se connecter";
}
//Envoie de requête $texte sur le serveur
function EnvoiRequete($texte) {
echo "<span class=\"sortant\">Envoi de la requête : ".$texte." ...";actualiser();
if ($envoidonne = socket_write($socket, $texte, strlen($texte))){
echo "OK.</span><br />";actualiser();
} else echo "socket_write() a échoué : raison : (".$envoidonne.") " . socket_strerror($envoidonne) . "<br />";actualiser();
}
//Récéption de requêtes sur le serveur dont la fin de phrase est identifiée via $masquefinderéponse
function LireReponse($masquefinderéponse) {
echo "<span class=\"entrant\">Réponse : ";actualiser();
do {$reception = socket_read($socket, 2048);} while (preg_match($masquefinderéponse, $reception));
echo htmlspecialchars($reception, ENT_QUOTES)."</span><br />";actualiser();
}
//On ferme la connexion
function FermerConnexion() {
socket_close($socket);
echo "<span class=\"avertissements\">Socket Fermé.</span>";
}
}?> |
Partager