・ス・ア・テ・ネ エリソ�
PHP Manual

socket_recv

(PHP 4 >= 4.1.0, PHP 5)

socket_recvタワツウ、キ、ソ・ス・ア・テ・ネ、ォ、鬣ヌ。シ・ソ、ョ、ケ、�

タ篶タ

int socket_recv ( resource $socket , string &$buf , int $len , int $flags )

socket_recv() エリソマ。「 socket 、ォ、� len ・ミ・、・ネ、ホ・ヌ。シ・ソ、ョ、キ、ニ buf 、ヒウハヌシ、キ、゙、ケ。」 socket_recv() 、ネ、ヲ、ネ。「 タワツウ、キ、ソ・ス・ア・テ・ネ、ォ、鬣ヌ。シ・ソ、�スク、ケ、�ウ、ネ、ャ、ヌ、ュ、゙、ケ。」 、オ、鬢ヒ。「・ユ・鬣ー、リト熙キ、ニエリソホオー、ムケケ、ケ、�ウ、ネ、筅ヌ、ュ、゙、ケ。」

buf 、マサイセネナマ、キ、ハ、ホ、ヌ。「 ー惞�ケ・ネ、ヒ、マハムソヌナマ、オ、ハ、ア、�ミ、ハ、熙゙、サ、」 socket 、ォ、� socket_recv() 、ヌニノ、゚ケ�、タ・ヌ。シ・ソ、ャ buf 、ヒニ�、熙゙、ケ。」

・ム・鬣癸シ・ソ

socket

socket 、マ。「サー、ヒ socket_create() 、ヌコ鋿ョ、キ、ソ・ス・ア・テ・ネ・�ス。シ・ケ、ヌ、ハ、ア、�ミ、ハ、熙゙、サ、」

buf

ショ、キ、ソ・ヌ。シ・ソ、ャ。「 buf 、ヌサリト熙キ、ソハムソヒウハヌシ、オ、�゙、ケ。」 ・ィ・鬘シ、ャネッタク、キ、ソ、�ワツウ、ャ・�サ・テ・ネ、オ、�ソ、�ヌ。シ・ソ、ャツクコ゚、キ、ハ、ォ、テ、ソ、熙キ、ソセ�遉マ。「 buf 、ヒ、マ NULL 、ャタ゚ト熙オ、�゙、ケ。」

len

コヌツ� len ・ミ・、・ネ、゙、ヌ、�筍シ・ネ・ロ・ケ・ネ、ォ、鮠霹タ、キ、゙、ケ。」

flags

flags 、ホテヘ、マ。「シ。、ホ・ユ・鬣ー、タヘ� OR (|) ア鮟ササメ、ヌチネ、゚ケ遉�サ、ソ、筅ホ、ネ、ハ、熙゙、ケ。」

flags 、ホ、ネ、熙ヲ、�ヘ
・ユ・鬣ー タ篶タ
MSG_OOB out-of-band 、靉�、キ、゙、ケ。」
MSG_PEEK ショ・ュ・蝪シ、ホタ霹ャ、ォ、鬣ヌ。シ・ソ、霹タ、キ。「ショ、キ、ソ・ヌ。シ・ソ、ュ・蝪シ、ォ、鮗��キ、゙、サ、」
MSG_WAITALL コヌト� len ・ミ・、・ネショ、ケ、�゙、ヌ・ヨ・愠テ・ッ、キ、゙、ケ。」 、キ、ォ、キ。「・キ・ー・ハ・�アシ隍テ、ソ、��筍シ・ネ・ロ・ケ・ネ、ャタワツウ、レテヌ、キ、ソ、熙キ、ソセ�遉マ。「 、ウ、ホエリソャハヨ、ケ・ヌ。シ・ソ、ャ、ス、�隍�ッ、ハ、ッ、ハ、�トヌスタュ、ャ、「、熙゙、ケ。」
MSG_DONTWAIT 、ウ、ホ・ユ・鬣ー、゚ト熙ケ、�ネ。「タオセ�ヒ・ヨ・愠テ・ッ、オ、�ニ、、、�ヨ、ヌ、箒リソャキ�フ、ヨ、キ、゙、ケ。」

ハヨ、�ヘ

socket_recv() 、マ。「ショ、キ、ソ・ミ・、・ネソヨ、キ、゙、ケ。」 ・ィ・鬘シ、ャネッタク、キ、ソセ�遉マ FALSE 、ヨ、キ、゙、ケ。」 シツコン、ホ・ィ・鬘シ・ウ。シ・ノ、霹タ、ケ、�ヒ、マ socket_last_error() 、ウ。シ・�キ、゙、ケ。」 、ウ、ホ・ィ・鬘シ・ウ。シ・ノ、� socket_strerror() 、ヒナマ、ケ、ネ。「・ィ・鬘シ、ヒエリ、ケ、�篶タ・ニ・ュ・ケ・ネ、霹タ、ケ、�ウ、ネ、ャ、ヌ、ュ、゙、ケ。」

ホ�

ホ�1 socket_recv() 、ホホ�

、ウ、ホホ网マ。「 ホ� 、ホコヌス鬢ホホ网ュエケ、ィ、ニ socket_recv() 、ネ、ヲキチシー、ヒ、キ、ソ、筅ホ、ヌ、ケ。」

<?php
error_reporting
(E_ALL);

echo 
"<h2>TCP/IP Connection</h2>\n";

/* WWW ・オ。シ・モ・ケ、ホ・ン。シ・ネ、霹タ、キ、゙、ケ */
$service_port getservbyname('www''tcp');

/* ツミセン、ネ、ハ、�ロ・ケ・ネ、ホ IP ・「・ノ・�ケ、霹タ、キ、゙、ケ */
$address gethostbyname('www.example.com');

/* TCP/IP ・ス・ア・テ・ネ、鋿ョ、キ、゙、ケ */
$socket socket_create(AF_INETSOCK_STREAMSOL_TCP);
if (
$socket === false) {
    echo 
"socket_create() failed: reason: " socket_strerror(socket_last_error()) . "\n";
} else {
    echo 
"OK.\n";
}

echo 
"Attempting to connect to '$address' on port '$service_port'...";
$result socket_connect($socket$address$service_port);
if (
$result === false) {
    echo 
"socket_connect() failed.\nReason: ($result) " socket_strerror(socket_last_error($socket)) . "\n";
} else {
    echo 
"OK.\n";
}

$in "HEAD / HTTP/1.1\r\n";
$in .= "Host: www.example.com\r\n";
$in .= "Connection: Close\r\n\r\n";
$out '';

echo 
"Sending HTTP HEAD request...";
socket_write($socket$instrlen($in));
echo 
"OK.\n";

echo 
"Reading response:\n\n";
$buf 'This is my buffer.';
if (
false !== ($bytes socket_recv($socket$buf2048MSG_WAITALL))) {
    echo 
"Read $bytes bytes from socket_recv(). Closing socket...";
} else {
    echo 
"socket_recv() failed; reason: " socket_strerror(socket_last_error($socket)) . "\n";
}
socket_close($socket);

echo 
$buf "\n";
echo 
"OK.\n\n";
?>

セ螟ホホ网ホスミホマ、マ。「、ウ、ホ、隍ヲ、ヒ、ハ、熙゙、ケ。」

<h2>TCP/IP Connection</h2>
OK.
Attempting to connect to '208.77.188.166' on port '80'...OK.
Sending HTTP HEAD request...OK.
Reading response:

Closing socket...HTTP/1.1 200 OK
Date: Mon, 14 Sep 2009 08:56:36 GMT
Server: Apache/2.2.3 (Red Hat)
Last-Modified: Tue, 15 Nov 2005 13:24:10 GMT
ETag: "b80f4-1b6-80bfd280"
Accept-Ranges: bytes
Content-Length: 438
Connection: close
Content-Type: text/html; charset=UTF-8

OK.


・ス・ア・テ・ネ エリソ�
PHP Manual