티스토리 뷰

코드 스니펫 복사

이번에 PHP로 개발을 하게 되었는데 ASP로 작성된 다른 사이트의 내용을 가져와야 하는 경우가 생겼습니다.

그래서 어떻게 할까 고민하는 도중 fsockopen() 함수를 이용한 소스를 발견하여 적용하니 만족할 만한 결과를 얻을 수 있었습니다.


제가 사용한 소스는 아래와 같습니다.


<!--페이지 가져오기 시작-->
<?php
function fetch_url($theurl) {
$url_parsed = parse_url($theurl);
$host = $url_parsed["host"];
$port = $url_parsed["port"];
if($port==0) $port = 80;
$the_path = $url_parsed["path"];
if(empty($the_path)) $the_path = "/";
if(empty($host)) return false;
if($url_parsed["query"] != "") $the_path .= "?".$url_parsed["query"];
$out = "GET ".$the_path." HTTP/1.0\r\nHost: ".$host."\r\n\r\nUser-Agent: Mozilla/4.0 \r\n";
$fp = fsockopen($host, $port, $errno, $errstr, 30);
usleep(50);
if($fp) {
socket_set_timeout($fp, 30);
fwrite($fp, $out);
$body = false;
while(!feof($fp)) {
$buffer = fgets($fp, 128);
if($body) $content .= $buffer;
if($buffer=="\r\n") $body = true;
}
fclose($fp);
}else {
return false;
}
return $content;
}
echo fetch_url("http://rtquery.naver.com/rtquery_view.php?s=nexearch&n=20");
?>
<!--페이지 가져오기 끝-->





출처 : http://freeimage.kr/bbs/?tip_php=808



신고
댓글
댓글쓰기 폼
공지사항
Total
2,511,655
Today
682
Yesterday
1,125
«   2017/11   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
글 보관함