Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou com dúvida na função fsockopen, monto minha header faço a conexão no site desejado, quando recebo o arquivo de resposta, estou conseguindo ler só que cai no loop infinito. Pesquisei e vi algumas pessoas falando que o servidor que eu conectei que manda o final do arquivo, só que tem uns que não manda. Como identificar o final do arquivo ???
Código onde vou armazenando a resposta.
while(!feof($fp)){
$novoConteudo = fgets($fp, 1024);
$resposta .= $novoConteudo;
}
fclose($fp);
No próprio manual do php eles falam sobre isso:
Se uma conexão aberta por fsockopen() não foi fechada pelo servidor, feof() irá esperar até que seja atingido o limite de tempo para retornar TRUE. O limite de tempo padrão é 60 segundos. Você pode usar stream_set_timeout() para mudar este valor.
O porem de definir um stream_set_timeout() é de não saber o quanto tempo vou demorar. Pois faço várias conexões. Alguém sugere uma outra solução ?
Carregando comentários...