当前位置: 编程技术>php
本页文章导读:
▪非常好用的两个PHP函数 serialize()和unserialize()
今天,在做一个关于PING服务的东西,由于不想把ping服务地址放进数据库中,那样不好,ping服务本来不是一个效率不高的事,再放进数据库中,不但更加降低了程序的效率,还给服务器带来.........
▪PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
代码如下: function write_naps_bot(){ $useragent=get_naps_bot(); // echoExit($useragent); if ($useragent=="false") return FALSE ; date_default_timezone_set("Asia/Shanghai"); $date=date("Y-m-d H:i:s"); $ip=$_SERVER[REMOTE_ADDR]; $url="http://".$_S.........
▪PHP的博客ping服务代码
PHP的ping服务代码其实在以前我已经写过一个类,不过,有很多朋友加我好友说,看不太懂,那个是以类的形式写的,可能如果直接放到代码里直接用不太行,今天发一下能够直接用的ping函.........
[1]非常好用的两个PHP函数 serialize()和unserialize()
来源: 互联网 发布时间: 2013-11-30
今天,在做一个关于PING服务的东西,由于不想把ping服务地址放进数据库中,那样不好,ping服务本来不是一个效率不高的事,再放进数据库中,不但更加降低了程序的效率,还给服务器带来不必要的损耗,所以,想办法所ping服务地址用数组的方式放进了.conf文件中,才开始的设计思路是通过生成的php代码放到.php文件中,然后再把.php文件载入进来,后来,发现操作起来不太方便,所以,决定使用serialize()函数和unserialize()函数,这两个函数的用法真是绝配,一个是进行序列化存储,另一个则是进行序列化恢复,方便极了,函数用法代码分享:
<?php
$array = array();
$array['key'] = 'website';
$array['value']='www.chhua.com';
$a = serialize($array);
echo $a;
unset($array);
$a = unserialize($a);
print_r($a);
?>
没有写太具体的用法,童鞋可以自己思考,然后尝试,还是那句话,我这里说的只是一种思路和方法,具体用法,还是要自己研究。
代码如下:
<?php
$array = array();
$array['key'] = 'website';
$array['value']='www.chhua.com';
$a = serialize($array);
echo $a;
unset($array);
$a = unserialize($a);
print_r($a);
?>
没有写太具体的用法,童鞋可以自己思考,然后尝试,还是那句话,我这里说的只是一种思路和方法,具体用法,还是要自己研究。
[2]PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
来源: 互联网 发布时间: 2013-11-30
代码如下:
function write_naps_bot(){
$useragent=get_naps_bot();
// echoExit($useragent);
if ($useragent=="false") return FALSE ;
date_default_timezone_set("Asia/Shanghai");
$date=date("Y-m-d H:i:s");
$ip=$_SERVER[REMOTE_ADDR];
$url="http://".$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI];
// echoExit($url);转载注明www.chhua.com
if (!file_exists("./log/bot.html")){
$botfile=fopen("./log/bot.html", "w");
$fileHeader="<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />
<title>访问查看</title>
</head>
<a href=/index.html"../?action=delbot\">删除日志</a><hr>
";
// echoExit($botfile);转载注明www.chhua.com
fputs($botfile, $fileHeader);
fclose($botfile);
}else
{ $filesize=filesize("./log/bot.html");
if ($filesize>=100000){
$botfile=fopen("./log/bot.html", "w");
$fileHeader="<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />
<title>访问查看</title>
</head>
<a href=/index.html"../?action=delbot\">删除日志</a><hr>
";
fputs($botfile, $fileHeader);
fclose($botfile);
}else {
$botfile=fopen("./log/bot.html", "a+");
}
//$size="<b>当前文件大小为:</b>".$filesize."<br>";转载注明www.chhua.com
$useragent="<b>USER:</b>".$useragent."<Br>";
$date="<b>TIME:</b>".$date."<Br>";
$ip="<b>IP:</b>".$ip."<Br>";
$url="<b>URL:</b><a href='/blog_article/$url/index.html' target='_blank'>".$url."</a><Br><Br>";
$fileStr=$useragent.$date.$ip.$url;
fputs($botfile, $fileStr);
fclose($botfile);
}
}
function get_naps_bot() {
$useragent = strtolower($_SERVER['HTTP_USER_AGENT']);
if(strpos($useragent, 'googlebot') !== false){
return '<font color=blue>Googlebot</font>';
}
if(strpos($useragent, 'msnbot') !== false){
return 'MSNbot';
}
if(strpos($useragent, 'slurp') !== false){
return '<font color=green>Yahoobot</font>';
}
if(strpos($useragent, 'baiduspider') !== false){
return '<font color=red>Baiduspider</font>';
}
if(strpos($useragent, 'sohu-search') !== false){
return 'Sohubot';
}
if(strpos($useragent, 'lycos') !== false){
return 'Lycos';
}
if(strpos($useragent, 'robozilla') !== false){
return 'Robozilla';
}
return "false";
}
[3]PHP的博客ping服务代码
来源: 互联网 发布时间: 2013-11-30
PHP的ping服务代码其实在以前我已经写过一个类,不过,有很多朋友加我好友说,看不太懂,那个是以类的形式写的,可能如果直接放到代码里直接用不太行,今天发一下能够直接用的ping函数,希望对大家有所帮助,还需要说明的一点是现在的ping并不是像以前那么管用了,因为,百度和gg可能又加入了其它的指标,新网站ping能成功,但不一定是百分百收录。
<?php
function postUrl(/blog_article/$url, $postvar/index.html)
{
$ch = curl_init();
$headers = array(
"POST ".$url." HTTP/1.0","Content-type: text/xml; charset=\"gb2312\"",
"Accept: text/xml",
"Content-length: ".strlen($postvar)
);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvar);
$res = curl_exec ($ch);
curl_close
($ch);
return $res;
}
$baiduXML = "<?xml version=\"1.0\"
encoding=\"gb2312\"?>
<methodCall>
<methodName>weblogUpdates.extendedPing</methodName>
<params>
<param><value><string>WEB开发笔记</string></value></param>
<param><value><string>http://www.</string></value></param>
<param><value><string>http://www./001</string></value></param>
<param><value><string>http://www.</string></value></param>
</params>
</methodCall>";
$res
= postUrl('http://ping.baidu.com/ping/RPC2', $baiduXML);
if ( strpos($res, "<int>0</int>") )
{
echo
"PING成功";
}
else
{
echo "PING失败";
}
?>
代码如下:
<?php
function postUrl(/blog_article/$url, $postvar/index.html)
{
$ch = curl_init();
$headers = array(
"POST ".$url." HTTP/1.0","Content-type: text/xml; charset=\"gb2312\"",
"Accept: text/xml",
"Content-length: ".strlen($postvar)
);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvar);
$res = curl_exec ($ch);
curl_close
($ch);
return $res;
}
$baiduXML = "<?xml version=\"1.0\"
encoding=\"gb2312\"?>
<methodCall>
<methodName>weblogUpdates.extendedPing</methodName>
<params>
<param><value><string>WEB开发笔记</string></value></param>
<param><value><string>http://www.</string></value></param>
<param><value><string>http://www./001</string></value></param>
<param><value><string>http://www.</string></value></param>
</params>
</methodCall>";
$res
= postUrl('http://ping.baidu.com/ping/RPC2', $baiduXML);
if ( strpos($res, "<int>0</int>") )
{
echo
"PING成功";
}
else
{
echo "PING失败";
}
?>
最新技术文章: