php中用于检测一个地理IP地址是否可用的代码
author:一佰互联 2019-04-30   click:153
复制代码 代码如下:
/********************************************
*
* 函数名: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."", 3, MYMEDIA."/log/".date("Y-m-d")."_Err.log");
}else{
error_log(date("H:i:s") . " Curl 成功: " . $proxy."", 3, MYMEDIA."/log/".date("Y-m-d")."_OK.log");
}
curl_close($ch);
return $result;
}