function getHttpByProxy($_url, $_proxy_name = null, $_proxy_port = 4480, $uid=null, $passwd=null){
//if(is_null($_proxy_name) || LOCAL_TEST){
if(is_null($_proxy_name)) {
return readfile($_url);
}else{
$proxy_cont = '';
$proxy_fp = pfopen($_url, $_proxy_name, $_proxy_port, $uid, $passwd);
while(!feof($proxy_fp)) {$proxy_cont .= fread($proxy_fp,4096);}
$proxy_cont = substr($proxy_cont, strpos($proxy_cont,"\r\n\r\n")+4);
fclose($proxy_fp);
return $proxy_cont;
}
}
function pfopen($_url, $_proxy_name = null, $_proxy_port = 4480, $uid, $passwd) {
//if(is_null($_proxy_name) || LOCAL_TEST){
if(is_null($_proxy_name)){
echo "is_null_proxy_name\r\n";
return fopen($_url,80);
}else{
$proxy_fp = fsockopen($_proxy_name, $_proxy_port);
if (!$proxy_fp) return false;
$request = makeHTTPHeader($_url, $uid, $passwd);
echo "req : [$request]\r\n";
fputs($proxy_fp, $request);
return $proxy_fp;
}
}
function makeHTTPHeader($url, $uid=null, $passwd=null)
{
$host=strBetween($url,"http://","?");
$header="GET $url HTTP/1.0\r\n";
$header.="Host: $host\r\n";
$header.="User-Agent: PHP Agent\r\n";
$header.="Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
$header.="Accept-Language: en-us,en;q=0.5\r\n";
$header.="Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n";
if($uid!=null && $passwd!=null) {
$auth="$uid:$passwd";
$auth=base64_encode($auth);
$header.="Authorization: Basic $auth\r\n";
}
$header.="\r\n";
return $header;
}
function strBetween($str,$start_delim,$end_delim) {
//if(strpos($str,$start_delim) == FALSE) // if there is no start_delim in str
// $c1 = $str;
// else
$c1 = substr($str, strpos($str,$start_delim)+strlen($start_delim));
$c1_end=strpos($c1,$end_delim);
if($c1_end == FALSE) // if there is no end_delim in str
$c1_sub = $c1;
else
$c1_sub = substr($c1,0,$c1_end);
return $c1_sub;
}
$cont = getHttpByProxy("http://api.foursquare.com/v1/venues?geolat=37.26&geolong=127.05&l=30&q=%EC%82%BC%EC%84%B1","168.219.61.250",8080);
//$cont = utf8_decode($cont);
echo "[$cont]\r\n";
$fp = fopen("res.xml","w");
fwrite($fp, $cont, strlen($cont));
fclose($fp);
?>
'HTML' 카테고리의 다른 글
★ php substr ★ php 인코딩 iconv (0) | 2011.05.10 |
---|---|
★ php substr ★ PHP Studying (0) | 2011.05.10 |
★ php substr ★ [javascript] 문자열 자른 후 원하는 문자열 추가하는 함수 (0) | 2011.05.09 |
★ php substr ★ 단어자르기 함수 (0) | 2011.05.09 |
★ php substr ★ 노키아 스마트폰 x6 [디자인편] (0) | 2011.05.09 |