很多php新手在開發自己的網站采集功能時都會直接用到file_get_contents來讀取或fopen是吧,是吧,我們下載采集功能加強了了一點點就是要對方的防盜鏈都不能防止的采集功能。
很多php新手在開發自己的網站采集功能時都會直接用到file_get_contents來讀取或fopen是吧,是吧,我們下載采集功能加強了了一點點就是要對方的防盜鏈都不能防止的采集功能。
function retrieveURLContentBySocket($url,
$host="",
$port=80,
$timeout=30){
if($host == ""){
if(!($pos = strpos($url,'://'))){
return false;
}
$host = substr( $url,
$pos+3,
strpos($url,'/',$pos+3) - $pos - 3);
$uri = substr($url,strpos($url,'/',$pos+3));
}
else{
$uri = $url;
}
$request = "GET ".$uri." HTTP/1.0rn"
."Host: ".$host."rn"
."Accept: */*rn"
."User-Agent: ZealGetrn"
."rn";
$sHnd = @fsockopen ($host, $port, $errno, $errstr, $timeout);
if(!$sHnd){
return false;
}
@fputs ($sHnd, $request);
// Get source
$result = "";
while (!feof($sHnd)){
$result .= fgets($sHnd,4096);
}
fclose($sHnd);
$headerend = strpos($result,"rnrn");
if (is_bool($headerend))
{
return $result;
}
else{
return substr($result,$headerend+4);
}