W3docs

Função PHP fsockopen(): Tudo o Que Você Precisa Saber

Aprenda a usar a função fsockopen() do PHP para estabelecer conexões de rede via TCP/IP e comunicar-se com servidores externos.

Como desenvolvedor PHP, pode ser necessário estabelecer uma conexão de rede e comunicar-se com outro servidor usando o protocolo TCP/IP. A função fsockopen() fsockopen() fsockopen() stream_socket_client() ou cURL. Este artigo explica a função legada para fins de referência e migração.

O que é a Função fsockopen()?

A função fsockopen() abre uma conexão de rede TCP/IP com um host e porta especificados, permitindo que dados sejam enviados e recebidos por meio de ponteiros de arquivo.

Como Usar a Função fsockopen()

Usar a função fsockopen() é simples. Veja a sintaxe:

Sintaxe PHP

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

A função aceita cinco parâmetros:

  • $hostname : O nome do host ou endereço IP do servidor.
  • $port : O número da porta à qual se conectar.
  • &$errno : Uma variável que armazena o número do erro, se houver.
  • &$errstr : Uma variável que armazena a mensagem de erro, se houver.
  • $timeout fsockopen() default_socket_timeout stream_socket_client() ini setting if omitted.

Nota: Para conexões seguras, prefixe o hostname com ssl:// tls:// tls://example.com ).

Veja um exemplo de como usar a função fsockopen() para estabelecer uma conexão de rede com um servidor e enviar/receber dados:

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

Neste exemplo, usamos a função fsockopen() fsockopen() example.com fgets() function.

Nota: Para requisições HTTPS, use tls:// $host variable.

Conclusão

Embora fsockopen() fsockopen() stream_socket_client() ou cURL para novos projetos. Esta referência continua sendo útil para a manutenção de bases de código legadas.

Prática

Prática
O que a função fsockopen faz em PHP?
O que a função fsockopen faz em PHP?
Was this page helpful?