W3docs

Función PHP fsockopen(): Todo lo que necesitas saber

Aprende a usar la función fsockopen() de PHP para establecer conexiones de red TCP/IP y comunicarte con servidores. Referencia completa con ejemplos.

Como desarrollador PHP, puede que necesites establecer una conexión de red y comunicarte con otro servidor usando el protocolo TCP/IP. La función fsockopen() fsockopen() fsockopen() stream_socket_client() o cURL en su lugar. Este artículo explica la función heredada con fines de referencia y migración.

¿Qué es la función fsockopen()?

La función fsockopen() abre una conexión de red TCP/IP a un host y puerto especificados, lo que permite enviar y recibir datos mediante punteros de archivo.

Cómo usar la función fsockopen()

Usar la función fsockopen() es sencillo. Aquí está la sintaxis:

Sintaxis PHP

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

La función acepta cinco parámetros:

  • $hostname : El nombre de host o dirección IP del servidor.
  • $port : El número de puerto al que conectarse.
  • &$errno : Una variable que almacena el número de error, si lo hay.
  • &$errstr : Una variable que almacena el mensaje de error, si lo hay.
  • $timeout fsockopen() default_socket_timeout stream_socket_client() ini si se omite.

Nota: Para conexiones seguras, añade el prefijo ssl:// tls:// al nombre de host (por ejemplo, tls://example.com ).

Aquí hay un ejemplo de cómo usar la función fsockopen() para establecer una conexión de red con un servidor y enviar/recibir datos:

Ejemplo de uso

<?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);
}

En este ejemplo, usamos la función fsockopen() fsockopen() example.com fgets() .

Nota: Para solicitudes HTTPS, usa tls:// como prefijo de la variable $host .

Conclusión

Aunque fsockopen() fsockopen() stream_socket_client() o cURL para proyectos nuevos. Esta referencia sigue siendo útil para el mantenimiento de bases de código heredadas.

Práctica

Práctica
¿Qué hace la función fsockopen en PHP?
¿Qué hace la función fsockopen en PHP?
Was this page helpful?