这里收集了几种利用php获得网页源代码的方法,可以根据实际需要选用。

1、使用file_get_contents获得网页源代码

这个方法比较常用,只需要两行代码即可,非常简单方便。

参考代码:

<?php
    $fh= file_get_contents('http://www.ecjson.com/');
    echo $fh;
?>

2、使用fopen获得网页源代码

参考代码:

<?php
$fh = fopen('http://www.ecjson.com/', 'r');
if($fh){
    while(!feof($fh)) {
        echo fgets($fh);
    }
}
?>

3、使用curl获得网页源代码

使用curl获得网页源代码的做法,往往是需要更高要求的人使用,例如当你需要在抓取网页内容的同时,得到网页header信息,还有ENCODING编码的使用,USERAGENT的使用等等。

参考代码:

<?php
// 创建一个新cURL资源
$ch = curl_init();
// 设置URL和相应的选项
curl_setopt ($ch, CURLOPT_URL, "http://www.ecjson.com/");
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT,20);
// 抓取URL
$res = curl_exec($ch);
//关闭cURL资源,并且释放系统资源
curl_close($ch);
//如果出现乱码使用该语句转码
$res=mb_convert_encoding($res, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5');
?>

上例里使用的curl_setopt()的参数,可以参考这里http://php.net/manual/zh/function.curl-setopt.php查看更多参数及用途。