PHPのsocket_readの問題

WBOY
リリース: 2016-06-23 14:31:07
オリジナル
1724 人が閲覧しました

はじめに: これは、PHP のソケット読み取りの問題に関する詳細ページであり、PHP に関連する知識、スキル、経験、およびいくつかの PHP ソース コードを紹介します。

class='pingjiaF' フレームボーダー='0' src='http://biancheng.dnbcw.info/pingjia.php?id=323994' スクロール='no'>

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 =ソケット_create(AF_INET, SOCK_STREAM, SOL_TCP);
if (false == ($socket_result =ソケット接続($socket) , $address, $service_port)))
{
echo ("SOCKET_CONNECT_ERROR: " .socket_strerror(socket_last_error($socket)));
}

$in = "GET " . $url .
$in .= "ホスト: " . $website . "rn";
$in .= "接続: より近いnrn";

$start_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: タイムアウト!!!");
$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.1rn";
$out .= "ホスト: " . $website . "rn";
$out .= "接続: Closernrn";
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;
}
}
*/
?>

「PHP のソケット読み取りの問題」その他の関連記事》

Love J2EE Focus on Java Michael Jackson Video Station JSON Online Tool

http://biancheng.dnbcw.info/php/323994.html pageNo:15

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート