ip 주소 에 따라 관련 지역 정 보 를 가 져 옵 니 다.
3109 단어 IP 주소
<?php
/**
* ipAPI ip
* @author L.D.B
* 2012/09/12
*/
header("Content-type:text/html; charset=utf-8");
$ip='61.183.248.38';
$url='http://ip.taobao.com/service/getIpInfo.php?ip='.$ip;
var_dump(curl_rpc($url));
/**
* file_get_contents
* @param $url
*/
function get_area_file($url){
if(empty($url)){
return false;
}
$file=file_get_contents($url);
return json_decode($file,true);
}
function curl_rpc($url, $request='', $limit = 0, $timeout = 1){
if (!$url)
die('url is null');
$urlarr = parse_url($url);
$host = $urlarr['host'];
$path = $urlarr['path'];
$port = !empty($urlarr['port']) ? $urlarr['port'] : 80;
$len = strlen($request);
$hander = "POST $path HTTP/1.1\r
";
$hander .= "Host: $host:$port\r
";
$hander .= "Content-type: application/json\r
";
$hander .= "Connection: Close\r
";
$hander .= "Content-Length: $len\r
";
$hander .= "\r
";
$hander .= $request . "\r
";
$handerarr[0] = $hander;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); //The URL to fetch.
curl_setopt($ch, CURLOPT_HEADER, 0); //TRUE to include the header in the output.
curl_setopt($ch, CURLOPT_HTTPHEADER, $handerarr); //An array of HTTP header fields to set.
curl_setopt($ch, CURLOPT_POST, 1); //TRUE to do a regular HTTP POST
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //TRUE to return the transfer as a string of the return value of curl_exec() instead of outputting it out directly.
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1); //TRUE to return the raw output
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); //The maximum number of seconds to allow CURL functions to execute.
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
/**
* ip
*/
function get_ip(){
if (getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$ip = getenv('HTTP_CLIENT_IP');
} elseif (getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
} elseif (getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$ip = getenv('REMOTE_ADDR');
} elseif (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$ip = $_SERVER['REMOTE_ADDR'];
}
return preg_match('/[\d\.]{7,15}/', $ip, $matches) ? $matches [0] : '';
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
글로벌 IP 주소와 사설 IP 주소글로벌 IP 주소와 사설 IP 주소의 차이점과 왜 필요한가? 라는 곳을 모르기 때문에, 조사해 정리해 보았습니다. ~우선, 왜 필요한가? 그 이유에 대해~ 현재 IP 주소 (IPv4)는 인터넷에서 할당 된 IP 주소...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.