百度ping方法使用示例 自动ping百度

2015-01-24信息快讯网

这篇文章主要介绍了百度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表示成功。

linux下使用crontab实现定时PHP计划任务失败的原因分析
PHP使用range协议实现输出文件断点续传代码实例
windows7下安装php的php-ssh2扩展教程
windows7下安装php的imagick和imagemagick扩展教程
ThinkPHP框架任意代码执行漏洞的利用及其修复方法
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
ThinkPHP模板范围判断输出In标签与Range标签用法详解
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
Thinkphp使用mongodb数据库实现多条件查询方法
php使用百度ping服务代码实例
php中$美元符号与Zen Coding冲突问题解决方法分享
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
PHP函数addslashes和mysql_real_escape_string的区别
php警告Creating default object from empty value 问题的解决方法
php版小黄鸡simsimi聊天机器人接口分享
PHP弹出提示框并跳转到新页面即重定向到新页面
linux系统下php安装mbstring扩展的二种方法
修改apache配置文件去除thinkphp url中的index.php
windows下PHP_intl.dll正确配置方法(apache2.2+php5.3.5)
ini_set的用法介绍
浅析ThinkPHP中的pathinfo模式和URL重写
php缩小png图片不损失透明色的解决方法
php使用mb_check_encoding检查字符串在指定的编码里是否有效
mac下安装nginx和php
php cURL和Rolling cURL并发方式比较
php模拟ping命令(php exec函数的使用方法)
php mysql_real_escape_string函数用法与实例教程
©2014-2024 dbsqp.com