本帖最后由 mingniu66 于 2013-11-20 16:32:18 编辑
header("Content-Type:text/html;charset=utf-8");
$url = 'http://cm100.net/';
//获取远程网页的编码
function _charset($url){
$text = file_get_contents($url);
$mode = '/charset=(.*)\"/iU';
preg_match($mode,$text,$result);
return $result[1];
}
$charset = _charset($url);//获取远程网页的编码
//以上为公用
//1:获取远程网页的标题,$url地址,$charset用于判断编码
function _title($url,$charset){
$text = file_get_contents($url);
//如果是gb2312编码处理乱码
if ($charset == 'gb2312'){
$text = iconv('gb2312','utf-8',$text);
}
$mode = '/
(.*)/iU';
preg_match($mode,$text,$result);
return $result[1];
}
echo '网站标题:'.$title = _title($url,$charset); //获取远程网页的标题
//2:获取远程网页的简介
function _description($url,$charset){
$text = file_get_contents($url);
//gb2312编码乱码处理
if ($charset == 'gb2312'){
$text = iconv('gb2312','utf-8',$text);
}
$mode = '//iU';
preg_match($mode,$text,$result);
return $result[1];
}
echo '网站简介:'.$description = _description($url,$charset); //获取远程网页的简介
?>
初学PHP,想要获取远程网站的标题及简介,网上查了好几天写出来的结果,勉强能达到想要的结果,获取速度有点慢,感觉代码很乱,不知道有没有更好的方法,
回复讨论(解决方案)
你可以合成一个函数啊,那就应该很快了。
你这分析一个页面要获取多少次阿得
http://blog.csdn.net/jdgdf566/article/details/13632111
你看你每个函数里都用file_get_contents。当然慢啦。
应该只有1个函数用来file_get_contents获取内容,然后将内容传给每个函数来匹配结果!
谢谢大家的回答 正好4人40分 回答都一样 确实file_get_contents整了多次 因为初学 改起来可能费劲