ȸ¿ø°¡ÀԡžÆÀ̵ð/ºñ¹øã±â
ȨÀ¸·Î


fsockopen
8³â Àü
(PHP 4, PHP 5, PHP 7)

fsockopen — ÀÎÅÍ³Ý Á¢¼Ó ¶Ç´Â Unixµµ¸ÞÀÎ ¼ÒÄÏ ¿¬°áÀ» ¿­

¼³¸í
resource fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] )
hostname ·Î ÁöÁ¤ÇÑ ÀÚ¿ø¿¡ ´ëÇÑ ¼ÒÄÏ ¿¬°áÀ» ½ÃÀÛÇÕ´Ï´Ù.

Áö¿øµÇ´Â ¼ÒÄÏ Æ®·£½ºÆ÷Æ®ÀÇ ¸í´Ü¿¡ ±â¼úµÇ¾î ÀÖµíÀÌ, PHP´Â Internetµµ¸ÞÀÎ ¶Ç´Â Unixµµ¸ÞÀÎÀ» Áö¿øÇÕ´Ï´Ù. Áö¿øµÇ´Â Æ®·£½º Æ÷Æ®ÀÇ ¸ñ·ÏÀºstream_get_transports() À» »ç¿ëÇÏ°í ÃëµæÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

¼ÒÄÏÀº ±âº»ÀûÀ¸·Î ºí·Ï ¸ðµå¿¡¼­ ¿­¸³´Ï´Ù. socket_set_blocking() ¸¦ »ç¿ëÇÏ¿© ºñºí·Ï ¸ðµå·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

stream_socket_client() ÇÔ¼öµµ ÀÌ¿Í ºñ½ÁÇÏÁö¸¸ º¸´Ù dzºÎÇÑ ¿É¼ÇÀ» °®°í ÀÖ¾î ºñºí·Ï Á¢¼ÓÀ» Çϰųª ½ºÆ®¸®¹Ö ÄÁÅؽºÆ®¸¦ Á¦°øÇϰųª ÇÏ´Â ±â´ÉÀÌ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ
hostname
OpenSSLÁö¿øÀÌ ¼³Ä¡µÇ¾î ÀÖ´Â °æ¿ì hostname ¾Õ ¶Çssl:// ´Â tls:// ¸¦ ºÎ°¡ÇÔÀ¸·Î½á TCP/IP °æÀ¯¿¡¼­ ¿ø°Ý È£½ºÆ®¿¡ Á¢¼ÓÇÒ ¶§ SSL¶Ç´Â TLSŬ¶óÀ̾ðÆ® Á¢¼ÓÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

port
Æ÷Åä ¹øÈ£. unix:// ó·³ Æ÷Æ®¸¦ »ç¿ëÇÏÁö ¾Ê´Â Æ®·£½ºÆ÷Æ®ÀÇ °æ¿ì´Â -1 ±×·¡¼­ ¹«½ÃÇÏ°í ½ºÅµ ½Ãų ¼ö ÀÖ½À´Ï´Ù.

errno
ÁöÁ¤ÇÑ °æ¿ì ½Ã½ºÅÛ ÄÝconnect() ¿¡¼­ ¹ß»ýÇÑ ¿¡·¯ÀÇ ¿¡·¯ ¹øÈ£°¡ ÀúÀåµË´Ï´Ù.

errno ´Â0 °Í¿¡ ÇÔ¼ö°¡ FALSE ¸¦ µ¹·ÁÁÙ °æ¿ìconnect() ¸¦ È£ÃâÇϱâ Àü¿¡ ¿À·ù¸¦ ¹ß»ýÇÑ °ÍÀ» ³ªÅ¸³À´Ï´Ù. ÀÌ °æ¿ì, ¾î¼¸é ¼ÒÄÏÀÇ ÃʱâÈ­¿¡ ¿øÀÎÀÌ ÀÖ½À´Ï´Ù.

errstr
¿¡·¯ ¸Þ½ÃÁö¸¦ ³ªÅ¸³»´Â ¹®ÀÚ¿­.

timeout
Á¢¼Ó ½Ã°£ ¾Æ¿ô Ãʼö.

ÁÖÀÇ:

¼ÒÄÏ °æÀ¯¿¡¼­ µ¥ÀÌÅ͸¦ Àд ¶§ÀÇ Å¸ÀÓÀ» ¼³Á¤ÇØ¾ß ÇÒ °æ¿ì, fsockopen() ÆÄtimeout ¶ó¹ÌÅÍ´Â ¼ÒÄÏ¿¡ Á¢¼ÓÇÏ´Â µ¿¾È¿¡¸¸ Àû¿ëµÇ±â ¶§¹®¿¡ socket_set_timeout() ¸¦ »ç¿ëÇϼ¼¿ä.
¹Ýȯ °ª
fsockopen()´Â ÆÄÀÏ Æ÷ÀÎÅ͸¦ °±°Ú½À´Ï´Ù. ÀÌ ÆÄÀÏ Æ÷ÀÎÅÍ´Â (fgets(), fgetss(), fputs(), fclose(), feof() °°Àº) ´Ù¸¥ ÆÄÀÏ ÇÔ¼ö·Î »ç¿ë °¡´ÉÇÕ´Ï´Ù. ½ÇÆÐÇßÀ» °æ¿ìFALSE ¸¦ °±°Ú½À´Ï´Ù.

¿¡·¯/¿¹¿Ü
hostname °¡ À¯È¿ÇÑ µµ¸ÞÀÎÀÌ ¾Æ´Ñ °æ¿ì´Â E_WARNING ¸¦ ½½·ÎÇÕ´Ï´Ù.

¿¹
»ç·Ê 1fsockopen() ÀÇ ¿¹

<?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);
}
?>
»ç·Ê 2 UDPÁ¢¼ÓÀÇ »ç¿ë¹ý

ÀÌÇÏÀÇ ¿¹´Â ÀÚ½ÅÀÇ ¸Ó½ÅÀÇ UDP¼­ºñ½º"daytime"(Æ÷Æ® 13) ¿¡¼­ ³¯Â¥¿Í ½Ã°£À» ÃëµæÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³À´Ï´Ù.

<?php
$fp = fsockopen("udp://127.0.0.1", 13, $errno, $errstr);
if (!$fp) {
    echo "ERROR: $errno - $errstr<br />\n";
} else {
    fwrite($fp, "\n");
    echo fread($fp, 26);
    fclose($fp);
}
?>


ÁÖÀÇ:

ȯ°æ¿¡ µû¶ó¼­´Â Unixµµ¸ÞÀÎ ¶Ç´Â ¿É¼Ç Á¢¼Ó ŸÀÓ ¾Æ¿ôÀÌ ÀÌ¿ëÇÒ ¼ö ¾ø´Â °Íµµ ÀÖ½À´Ï´Ù.
°æ°í
UDP¼ÒÄÏÀº ¸®¸ðÆ® È£½ºÆ®¿ÍÀÇ Á¢¼ÓÀÌ È®¸³µÇÁö ¾Ê´õ¶óµµ, ¿À·ù¸¦ ¹ß»ýÇÏÁö ¾Ê°í ¿ÀÇÂµÈ °Íó·³ º¸ÀÌ´Â ÀÏÀÌ °¡²û ÀÖ´ä´Ï´Ù. ÀÌ ¿À·ù´Â ±× ¼ÒÄÏ¿¡¼­ µ¥ÀÌÅ͸¦ ÀÐ°í ¾µ ¶§¿¡¸¸ µå·¯³³´Ï´Ù. ÀÌ ¿øÀÎÀº UDP°¡"Ä¿³Ø¼Ç ¸®½º"ÀÇ ÇÁ·ÎÅäÄÝ·Î, ½ÇÁ¦·Î µ¥ÀÌÅ͸¦ ¼Û¼ö½ÅÇÒ ÇÊ¿ä°¡ »ý±æ ¶§±îÁö ¿î¿µ ü°è°¡ ¼ÒÄÏ¿ë ¸µÅ©¸¦ È®¸³ÇÏ·Á°í ÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

ÁÖÀÇ: ¼öÄ¡·Î IPv6ÁÖ¼Ò¸¦ ÁöÁ¤ÇÒ ¶§¿¡´Â (¿¹fe80::1)ÁÖ¼Ò¸¦ ³×¸ð³­ °ýÈ£·Î ¹­Áö ¾ÊÀ¸¸é ¾È µË´Ï´Ù. ¿¹¸¦ µé¾î tcp://[fe80::1]:80.
ÃßõÃßõ : 299 Ãßõ ¸ñ·Ï
¹øÈ£ Á¦¸ñ
1,252
[JqueryMobile] - Jquery Mobile È­¸é °­Á¦ ȸÀü
1,251
jQuery – ½º¸¶Æ®Æù ½ºÅ©¸° ȸÀü °¨Áö ½ºÅ©¸³Æ®
1,250
javascript audioÆÄÀÏ Àç»ý
1,249
javascript º¯¼ö scope shadowing Ŭ·ÎÀú
1,248
javascript ¹Ýº¹¹®
1,247
javascript Á¶°Ç¹®
1,246
javascript ¹è¿­
1,245
javascript ¿¬»êÀÚ¿Í ÇÔ¼ö
1,244
javascript ÀÚ·áÇü
1,243
javascript º¯¼ö
1,242
escapeshellcmd
1,241
passthru
1,240
system
1,239
exec
1,238
proc_open
1,237
popen
1,236
fgetc
1,235
fgets
1,234
fclose
1,233
fopen
fsockopen
1,231
stream_set_timeout
1,230
ºñ¹Ð¹øÈ£(Æнº¿öµå) À¯È¿¼º üũ (¹®ÀÚ, ¼ýÀÚ, Ư¼ö¹®ÀÚÀÇ Á¶ÇÕÀ¸·Î 6~16ÀÚ¸®)
1,229
PHP ¹®ÀÚ¿­¿¡ ÇѱÛÀÌ Æ÷ÇԵǾî ÀÖ´ÂÁö üũ
1,228
ÇѱÛüũ(preg match)
1,227
javascript escape/unescape -> php
1,226
Á¤±Ô Ç¥Çö½ÄÀ¸·Î ÇÑ±Û ¹®ÀÚ Æ÷ÇÔÇÏ´ÂÁö È®ÀÎÇϱâ
1,225
À¯´ÏÄڵ带 ÀÌ¿ë ÇÑ±Û Ãʼº, Áß¼º, Á¾¼ºÀ¸·Î ÂÉ°³±â - ÇѱÛ/¿µ¹® º¯È¯
1,224
ÇÑ±Û Ãʼº,Áß¼º,Á¾¼º ÀÚ¸£±â ÇÔ¼ö
1,223
%uABCD%u1234 °°Àº urlÀÇ À¯´ÏÄÚµå µðÄÚµù
¸ñ·Ï
¹ÂÁ÷Æ®·ÎÆ® ºÎ»ê±¤¿ª½Ã ºÎ»êÁø±¸ °¡¾ßµ¿ ¤Ó °³ÀÎÁ¤º¸Ãë±Þ¹æħ
Copyright ¨Ï musictrot All rights reserved.