commin.lib에 소켓 연결 함수 get_sock 채택완료

// host 와 uri 를 분리

        //if (ereg("http://([a-zA-Z0-9_\-\.]+)([^<]*)", $url, $res))

        if (preg_match("/http:\/\/([a-zA-Z0-9_\-\.]+)([^<]*)/", $url, $res)) {

            $host = $res[1];

            $get = $res[2];

        }

 

        // 80번 포트로 소캣접속 시도

        $fp = fsockopen($host, 80, $errno, $errstr, 30);

        if (!$fp) {

            die("$errstr ($errno)\n");

        } else {

            fputs($fp, "GET $get HTTP/1.0\r\n");

            fputs($fp, "Host: $host\r\n");

            fputs($fp, "\r\n");

 

            // header 와 content 를 분리한다.

            while (trim($buffer = fgets($fp, 1024)) != "") {

                $header .= $buffer;

            }

            while (!feof($fp)) {

                $buffer .= fgets($fp, 1024);

            }

        }

        fclose($fp);

 

        // content 만 return 한다.

        return $buffer;

 

소스 설명 부탁드리겠습니다.

답변 1개

채택된 답변
+20 포인트

socket 으로 http response를 가져오는 내용입니다.

 

간단히 file_get_contents를 이용해도 되지만

 

socket으로 처리하고 있네여

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고