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

时间:2022-06-12 06:03:34

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://www.zzvips.com"); 
$html = iconv( "Big5", "UTF-8//IGNORE" , $html); //转化编码方式为UTF8 
print $html; 
$htm = file("http://www.zzvips.com"); 
$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); 
?>