웹스쿨
curl 대신에 사용할만한 소스 본문
반응형
function get_data($url, $method = 'GET'){ // Initialize $info = parse_url($url); $req = ''; $data = ''; $line = ''; $agent = 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)'; $linebreak = "\r\n"; $headPassed = false; // Setting Protocol switch($info['scheme'] = strtoupper($info['scheme'])) { case 'HTTP': $info['port'] = 80; break; case 'HTTPS': $info['port'] = 443; break; default: return false; } // Setting Path if(!$info['path']) { $info['path'] = '/'; } // Setting Request Header switch($method = strtoupper($method)) { case 'GET': if($info['query']) { $info['path'] .= '?' . $info['query']; } $req .= 'GET ' . $info['path'] . ' HTTP/1.1' . $linebreak; $req .= 'Host: ' . $info['host'] . $linebreak; $req .= 'User-Agent: ' . $agent . $linebreak; $req .= 'Referer: ' . $url . $linebreak; $req .= 'Connection: Close' . $linebreak . $linebreak; break; case 'POST': $req .= 'POST ' . $info['path'] . ' HTTP/1.1' . $linebreak; $req .= 'Host: ' . $info['host'] . $linebreak; $req .= 'User-Agent: ' . $agent . $linebreak; $req .= 'Referer: ' . $url . $linebreak; $req .= 'Content-Type: application/x-www-form-urlencoded'.$linebreak; $req .= 'Content-Length: '. strlen($info['query']) . $linebreak; $req .= 'Connection: Close' . $linebreak . $linebreak; $req .= $info['query']; break; } // Socket Open $fsock = @fsockopen($info['ssl'] . $info['host'], $info['port']); if ($fsock) { fwrite($fsock, $req); while(!feof($fsock)) { $line = fgets($fsock, 128); if($line == "\r\n" && !$headPassed) { $headPassed = true; continue; } if($headPassed) { $data .= $line; } } fclose($fsock); } return $data;}
이 게시글은
https://webschool.kr/?v=board_view&board_key=7&idx=844
에서 작성한 글입니다. 소스코드의 경우 해당 블로그에서 이뿌게 노출이 되지 않을 수 있사오니, 위 링크로 들어오셔서 보시길 바랍니다.
https://webschool.kr/?v=board_view&board_key=7&idx=844
에서 작성한 글입니다. 소스코드의 경우 해당 블로그에서 이뿌게 노출이 되지 않을 수 있사오니, 위 링크로 들어오셔서 보시길 바랍니다.
반응형
'개발 경험 Tip > PHP' 카테고리의 다른 글
| 코드이그나이터(CodeIgniter) config 호출방법 (0) | 2023.03.31 |
|---|---|
| PHP 로 cron 등록/수정/삭제 (0) | 2023.03.31 |
| 코드이그나이터(CodeIgniter) csrf_protection 이 True 일때 Ajax Post 처리방법 (0) | 2023.03.31 |
| CI Board(씨아이보드) SMS 모듈 버그 (0) | 2023.03.31 |
| 코드이그나이터(CodeIgniter) csrf_protection 예외처리 (0) | 2023.03.31 |