php中用于检测一个地理IP地址是否可用的代码

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

/********************************************
*
* 函数名:curl_string ($url,$proxy)
* 作 用:检测代理IP地址
* 作 者:李飞麟
* 日 期:2011-11-09
*
********************************************/
function curl_string ($url,$proxy)
{
$user_agent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh- CN; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5 FirePHP/0.2.1";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_PROXY, $proxy);
curl_setopt ($ch, CURLOPT_URL, $url);//设置要访问的IP
curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent);//模拟用户使用的浏览器
@curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 ); // 使用自动跳转
curl_setopt ( $ch, CURLOPT_TIMEOUT, 120 ); //设置超时时间
curl_setopt ( $ch, CURLOPT_AUTOREFERER, 1 ); // 自动设置Referer

curl_setopt ($ch, CURLOPT_COOKIEJAR, 'c:\cookie.txt');
curl_setopt ($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 10);
$result = curl_exec($ch);
// Check if any error occured
if( $result === false)
{
error_log(date("H:i:s") . ' Curl 失败: ' . curl_error($ch) ." -- ". $proxy."\n", 3, MYMEDIA.'/log/'.date('Y-m-d').'_Err.log');
}else{
error_log(date("H:i:s") . ' Curl 成功: ' . $proxy."\n", 3, MYMEDIA.'/log/'.date('Y-m-d').'_OK.log');
}
curl_close($ch);
return $result;
}

相关文章

PHP实现MVC开发得最简单的方法——模型

昨天群里有人说使用MVC让程序多了很多数据库操作,使得性能下降,这着实让我吃了一惊。MVC只是一种框架,与数据库操作没有任何关系。MVC只是提供一种清晰的编程开发模式,只要你处理的好,是...

php命令行用法入门实例教程

php命令行用法入门实例教程

本文实例讲述了php命令行用法,分享给大家供大家参考。具体用法分析如下: Php是一个非常流行的web服务端脚本语言。其实,php不仅仅可以在web服务器中充当重要角色。在命令行一样可以...

php去掉URL网址中带有PHPSESSID的配置方法

这种情况主要是出现在Linux平台下才能出现,主要是因为php.ini中session.use_trans_sid 配置的问题。 设置php.ini中的session.use_trans...

PHP中Static(静态)关键字功能与用法实例分析

本文实例讲述了PHP中Static(静态)关键字功能与用法。分享给大家供大家参考,具体如下: 1、什么是static? static 是C++中很常用的修饰符,它被用来控制变量的...

PHP中如何判断AJAX提交的数据

如果是ajax请求,以下表达式的值为真 $_SERVER["HTTP_X_REQUESTED_WITH"]==”XMLHttpRequest” 就是一个PHP的环境变量。...