PHP读取网页文件内容的实现代码(fopen,curl等)

2015-01-24信息快讯网

php小偷程序中经常需要获取远程网页的内容,下面是一些实现代码,需要的朋友可以惨况下。

1.fopen实现代码:
 
<?php 
$handle = fopen ("http://www.example.com/", "rb"); 
$contents = ""; 
while (!feof($handle)) { 
$contents .= fread($handle, 8192); 
} 
fclose($handle); 
?> 

 
<?php 
// 对 PHP 5 及更高版本 
$handle = fopen("http://www.example.com/", "rb"); 
$contents = stream_get_contents($handle); 
fclose($handle); 
?> 

2.curl实现代码:
 
<?php 
function _url($Date){ 
$ch = curl_init(); 
$timeout = 5; 
curl_setopt ($ch, CURLOPT_URL, "$Date"); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"); 
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
$contents = curl_exec($ch); 
curl_close($ch); 
return $contents; 
} 
$pageURL="http://www.baidu.com"; 
$contents=_url($pageURL); 
?> 

编码转换函数
 
$html = file_get_contents("http://s.jb51.net"); 
$html = iconv( "Big5", "UTF-8//IGNORE" , $html); //转化编码方式为UTF8 
print $html; 
$htm = file("http://s.jb51.net"); 
$h = ""; 
foreach($htm as $value) 
{ 
$h.= iconv( "GB2312", "utf-8//IGNORE" , $value); 
} 
print_r($h); 

另一种打开网页的方法
 
<?php 
$opts = array( 
'http'=>array( 
'method'=>"GET", 
'header'=>"Accept-language: en\r\n" . 
"Cookie: foo=bar\r\n" 
) 
); 
$context = stream_context_create($opts); 
/* Sends an http request to www.example.com 
with additional headers shown above */ 
$fp = fopen('http://www.baidu.com', 'r', false, $context); 
fpassthru($fp); 
fclose($fp); 
?> 
©2014-2024 dbsqp.com