W3docs

Fonction PHP fsockopen() : Tout ce que vous devez savoir

Apprenez à utiliser la fonction PHP fsockopen() pour établir des connexions réseau TCP/IP et communiquer avec d'autres serveurs.

En tant que développeur PHP, vous pouvez avoir besoin d'établir une connexion réseau et de communiquer avec un autre serveur via le protocole TCP/IP. La fonction fsockopen() fsockopen() fsockopen() stream_socket_client() ou cURL à la place. Cet article explique cette fonction héritée à des fins de référence et de migration.

Qu'est-ce que la fonction fsockopen() ?

La fonction fsockopen() ouvre une connexion réseau TCP/IP vers un hôte et un port spécifiés, permettant l'envoi et la réception de données via des pointeurs de fichiers.

Comment utiliser la fonction fsockopen() ?

L'utilisation de la fonction fsockopen() est simple. Voici la syntaxe :

Syntaxe PHP

fsockopen($hostname, $port, &$errno, &$errstr, $timeout);

La fonction accepte cinq paramètres :

  • $hostname : Le nom d'hôte ou l'adresse IP du serveur.
  • $port : Le numéro de port auquel se connecter.
  • &$errno : Une variable qui stocke le numéro d'erreur, le cas échéant.
  • &$errstr : Une variable qui stocke le message d'erreur, le cas échéant.
  • $timeout fsockopen() default_socket_timeout stream_socket_client() ini setting if omitted.

Remarque : Pour les connexions sécurisées, préfixez le nom d'hôte avec ssl:// tls:// tls://example.com ).

Voici un exemple d'utilisation de la fonction fsockopen() pour établir une connexion réseau avec un serveur et envoyer/recevoir des données :

Exemple d'utilisation

<?php

$host = "example.com";
$port = 80;
$timeout = 30;
$fp = fsockopen($host, $port, $errno, $errstr, $timeout);
if (!$fp) {
  echo "Error: $errstr ($errno)<br/>";
} else {
  $out = "GET / HTTP/1.1\r\n";
  $out .= "Host: $host\r\n";
  $out .= "Connection: Close\r\n\r\n";
  fwrite($fp, $out);
  while (!feof($fp)) {
    echo fgets($fp, 128);
  }
  fclose($fp);
}

Dans cet exemple, nous utilisons la fonction fsockopen() fsockopen() example.com fgets() function.

Remarque : Pour les requêtes HTTPS, utilisez tls:// $host variable.

Conclusion

Bien que fsockopen() fsockopen() stream_socket_client() ou cURL pour les nouveaux projets. Cette référence reste utile pour la maintenance des bases de code héritées.

Pratique

Pratique
Que fait la fonction fsockopen en PHP ?
Que fait la fonction fsockopen en PHP ?
Was this page helpful?