您当前的位置: 首页 > 网站编程 > PHP教程 > 百度ping方法使用示例

百度ping方法使用示例

作者:不详 来源:网络 发布时间: 2014-08-07 20:53 点击:
这篇文章主要介绍了百度ping方法使用示例,可以把网站地址自动ping到百度,大家参考使用吧 使用方法访问的时候自动ping到百度,我的方法是生成缓存,更新缓存的时候自动ping百度,返回结果为0表示成功。 代码如下: $pingarcurl='http://'.$_SERVER['HTTP_HOST'].$_SERV

百度ping方法使用示例

  这篇文章主要介绍了百度ping方法使用示例,可以把网站地址自动ping到百度,大家参考使用吧

  使用方法访问的时候自动ping到百度,我的方法是生成缓存,更新缓存的时候自动ping百度,返回结果为0表示成功。

  代码如下:

  $pingarcurl='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

  $arcping = new Ping('脚本之家',$pingarcurl,get_domain(),'http://www.jb51.net');

  $arcping->pingbaidu();

  代码如下:

  class ping{

  private$title;//博客名称

  private$hosturl;//博客首页地址

  private$arturl;//新发文章地址

  private$rssurl;//博客rss地址

  private$baiduXML;//百度XML结构

  private$baiduRPC;//百度XML地址

  publicfunction__construct($title,$arturl,$hosturl,$rssurl)

  {

  if(empty($title)||empty($arturl))

  returnfalse;

  $this->title=$title;

  $this->hosturl=$hosturl;

  $this->rssurl=$rssurl;

  $this->arturl=$arturl;

  $this->baiduRPC='http://ping.baidu.com/ping/RPC2';

  $this->baiduXML='<?xmlversion="1.0"encoding="UTF-8"?>';

  $this->baiduXML.='<methodCall>';

  $this->baiduXML.='<methodName>weblogUpdates.extendedPing</methodName>';

  $this->baiduXML.='<params>';

  $this->baiduXML.='<param><value><string>'.$this->hosturl.'</string></value></param>';

  $this->baiduXML.='<param><value><string>'.$this->title.'</string></value></param>';

  $this->baiduXML.='<param><value><string>'.$this->arturl.'</string></value></param>';

  $this->baiduXML.='<param><value><string>'.$this->rssurl.'</string></value></param>';

  $this->baiduXML.='</params>';

  $this->baiduXML.='</methodCall>';

  }

  publicfunctionpingbaidu()

  {

  $ch=curl_init();

  $headers=array(

  'User-Agent:request',

  'Host:ping.baidu.com',

  'Content-Type:text/xml',

  );

  curl_setopt($ch,CURLOPT_URL,$this->baiduRPC);

  curl_setopt($ch,CURLOPT_HEADER,1);

  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

  curl_setopt($ch,CURLOPT_POST,1);

  curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);

  curl_setopt($ch,CURLOPT_POSTFIELDS,$this->baiduXML);

  $res=curl_exec($ch);

  curl_close($ch);

  //return$res;

  return(strpos($res,"<int>0</int>"))?true:false;

  }

  }

  functionget_domain()

  {

  /*协议*/

  $protocol='http://';

  /*域名或IP地址*/

  if(isset($_SERVER['HTTP_X_FORWARDED_HOST'])){

  $host=$_SERVER['HTTP_X_FORWARDED_HOST'];

  }elseif(isset($_SERVER['HTTP_HOST'])){

  $host=$_SERVER['HTTP_HOST'];

  }else{

  /*端口*/

  if(isset($_SERVER['SERVER_PORT'])){

  $port=':'.$_SERVER['SERVER_PORT'];

  if((':80'==$port&'http://'==$protocol)||(':443'==$port&'https://'==$protocol)){

  $port='';

  }

  }else{

  $port='';

  }

  if(isset($_SERVER['SERVER_NAME'])){

  $host=$_SERVER['SERVER_NAME'].$port;

  }elseif(isset($_SERVER['SERVER_ADDR'])){

  $host=$_SERVER['SERVER_ADDR'].$port;

  }

  }

  return$protocol.$host;

  }

  //$arc=newPing('网站标题','更新的URL地址','网站域名','rss地址');

  //$arc=newPing('你网站的title',get_arcurl($id),get_domain(),'http://www.abc.com/rss.php');

  //echo$arc->pingbaidu();

  //返回结果为0表示成功。
分享到:
本文"百度ping方法使用示例"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4