gpt4 book ai didi

php - 通过已经打开的 socket curl

转载 作者:行者123 更新时间:2023-12-03 11:53:16 28 4
gpt4 key购买 nike

我想知道是否有一种方法可以通过已经打开的套接字来使用curl,例如进行如下调整:

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

使用 curl_exec()而不是 fgets($fp, 128)
(或者,其他任何方式始终在同一流上使用 curl(),我的目标是阅读Twitter流API)

谢谢

最佳答案

这可能对您有用,因为您正在处理Twitter Stream API

set_time_limit(0);
$ch = curl_init();
echo "<pre>";
curl_setopt($ch, CURLOPT_URL, "https://sitestream.twitter.com/2b/site.json");
curl_setopt($ch, CURLOPT_WRITEFUNCTION, 'cgets');
curl_setopt($ch, CURLOPT_BUFFERSIZE, 128);
curl_setopt($ch, CURLOPT_USERPWD, 'user:password');
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 1000000);
curl_exec($ch);

function cgets($ch, $string) {
$length = strlen($string);
printf("Received %d byte\n", $length);
flush();
return $length;
}

关于php - 通过已经打开的 socket curl ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12913777/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com