最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
PHP中Socket_Read的问题
时间:2022-07-02 10:04:54 编辑:袖梨 来源:一聚教程网
error_reporting(E_ALL);
set_time_limit(0);
$runtimes = 100;
for ($i=0; $i<$runtimes; $i )
{
$str = f_socket("www.baidu.com","/s?wd=10000" . $i);
echo "
";
}
function f_socket($website,$url)
{
$service_port = getservbyname('www', 'tcp');
$address = gethostbyname($website);
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if (false == ($socket_result = socket_connect($socket, $address, $service_port)))
{
echo ("SOCKET_CONNECT_ERROR: " . socket_strerror(socket_last_error($socket)));
}
$in = "GET " . $url . " HTTP/1.1rn";
$in .= "Host: " . $website . "rn";
$in .= "Connection: closernrn";
socket_write($socket, $in, strlen($in));
$start_time = time();
$str = "";
do
{
if (false === ($out = socket_read($socket, 8192)))
{
echo ("SOCKET_READ_ERROR: " . socket_strerror(socket_last_error($socket)));
$str = "";
break;
}
if (time() - $start_time > 1)
{
echo ("SOCKET_READ_ERROR: Timeout!!!");
$str = "";
break;
}
$str .= $out;
} while ($out != "");
socket_close($socket);
return $str;
}
/*
function f_socket($website,$url)
{
$fp = fsockopen($website, 80, $errno, $errstr, 30);
if (!$fp)
{
}
else
{
$out = "GET " . $url . " HTTP/1.1 ";
$out .= "Host: " . $website . " ";
$out .= "Connection: Close ";
fwrite($fp, $out);
$str = "";
$start_time = time();
while (!feof($fp))
{
$str .= fread($fp, 8192);
if (time()-$start_time > 1)
{
$str = "";
echo "timeout!!!";
break;
}
}
return $str;
}
}
*/
?>
相关文章
- dash币钱包app 04-25
- 比特币怎么购买? 比特币冷钱包更新版本v3.4.8 04-25
- cardano价格预测-cardano行情 04-25
- 世界币最新消息是什么 世界币最新消息一览 04-25
- 2025SHIB币实时价格行情 一千块钱买了SHIB赚了7200万是真的吗? 04-25
- ok平台交易所2025下载地址v6.1.84_欧意电脑版官网app_欧意上如何提现 04-25