php改良判断网站是否被百度收录
在网上浏览php程序时 发现了这样一篇文章:php使用curl检测网页是否被百度收录的示例分享
http://www.jb51.net/article/46430.htm
作者很娴熟的运用curl来对网站是否被百度收录做出了判断,但是同样存在代码过于冗长的缺点,我冒昧的进行了改进:
原:
智宸公文签收管理系统是一款基于帝国EmpireCMS6.6平台开发,发布公文、签收公文、附件公文、置顶公文、公文管理、用户管理、公文搜索、邮箱通知、短信平台接口完美整合等功能于一体的高级公文签收管理系统。作为国内最受欢迎的PHP类公文签收系统之一,智宸公文签收管理系统在不断提升用户服务、提高产品质量的同时更加注重用户体验。从系统研发至今,历经了数百次的更新修改后,网站的架设与管理变得更加轻松及便捷
<?php/** 检测百度是否收录网页 curl模式* @ param string $url传入的url* return int (1 收录 0 不收录)*/function checkBaidu($url){$url='http://www.baidu.com/s?wd='.$url;$curl=curl_init();curl_setopt($curl,CURLOPT_URL,$url);curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);$rs=curl_exec($curl);curl_close($curl);$arr=parse_url($url);if(strpos($arr['query'],'http://')){$arr['query']=str_replace('http://','',str_replace('wd=','',$arr['query']));}else{$arr['query']=str_replace('wd=','',$arr['query']);}if(strpos($arr['query'],'?')){$str=strstr($arr['query'],'?');$arr['query']=str_replace($str,'',$arr['query']);}if(strpos($arr['query'],'/')){$narr=explode('/',$arr['query']);$arr['query']=$narr[0];}if(strpos($rs,'<b>'.$arr['query'].'</b>')){return 1;}else{return 0;} }echo checkBaidu('http://www.jb51.net/');?>改:
立即学习“PHP免费学习笔记(深入)”;
<?phpfunction checkbaidu($url){ $str=file_get_contents("http://wap.baidu.com/s?word=inurl:".$url);//加快速度,用WAP网页来进行搜索,并且应用搜索引擎的inurl语法 if(stripos($str,"抱歉,没有找到"))return 0;//如果出现关键字则判定没有找到 return 1;}echo checkbaidu("aaaaas.cc");?>










